LeetCode OJ 之 Valid Anagram
生活随笔
收集整理的這篇文章主要介紹了
LeetCode OJ 之 Valid Anagram
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目:
Given two strings?s?and?t, write a function to determine if?t?is an anagram of?s.
For example,
s?= "anagram",?t?= "nagaram", return true.
s?= "rat",?t?= "car", return false.
Note:
You may assume the string contains only lowercase alphabets.
思路:
統(tǒng)計第一個字符串的每一個字符出現(xiàn)的次數(shù),再統(tǒng)計第二個字符串的每一個字符出現(xiàn)的次數(shù)。然后比較,假設(shè)都同樣則返回true。
假設(shè)不同返回false。
代碼1:
class Solution { public:bool isAnagram(string s, string t) {int len1 = s.size();int len2 = t.size();if(len1 != len2)return false;int map[26] = {0};//因為題目確定每一個字符都是小寫字母。因此僅僅須要申請26個空間就可以for(int i = 0 ; i < len1 ; i++){map[s[i]-'a']++;}for(int i = 0 ; i < len1 ; i++){map[t[i]-'a']--;if(map[t[i]-'a'] < 0)return false;}return true;} };代碼2:
class Solution { public:bool isAnagram(string s, string t) {int len1 = s.size();int len2 = t.size();if(len1 != len2)return false;int map[26] = {0};//因為題目確定每一個字符都是小寫字母,因此僅僅須要申請26個空間就可以for(int i = 0 ; i < len1 ; i++){map[s[i]-'a']++;map[t[i]-'a']--;}for(int i = 0 ; i < len1 ; i++){if(map[t[i]-'a'] != 0)return false;}return true;} };轉(zhuǎn)載于:https://www.cnblogs.com/gavanwanggw/p/6878087.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的LeetCode OJ 之 Valid Anagram的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 传统存储做到极致也惊人!看宏杉科技发布的
- 下一篇: 源码安装nginx以及平滑升级