給定兩個字串 s 和 t ,編寫乙個函式來判斷 t 是否是 s 的乙個字母異位詞。
示例 1:
輸入: s = 「anagram」, t = 「nagaram」
輸出: true
示例 2:
輸入: s = 「rat」, t = 「car」
輸出: false
說明:你可以假設字串只包含小寫字母。
高階:如果輸入字串包含 unicode 字元怎麼辦?你能否調整你的解法來應對這種情況?
/*
思路:字母異位詞,兩個字串中字元相同,只是順序不一樣
1. 先將s存入到乙個字典當中,key為字串的每個字元,value為每個字串出現的次數
2. 處理t,遍歷t中的每個字元,每次遇到t中的字元同時存在於字典當中是,對應的value減一
3. 遍歷結束以後判斷字典當中每個字元對應的value是不是都為0,如果都為0則說明s和t為字母異位詞
*/class
solution
//如果s和t的長度相同,判斷s和t是不是字母異位詞
if(s.
length()
== t.
length()
)//遍歷tchar,每次遇到乙個字元正好也在map中,則map中對應的字元的value減一
for(
int i =
0; i < tchar.length; i++)}
//判斷map中的value是否全部為0
for(
int i =
0; i < map.
size()
; i++)}
return
true;}
}
/*
思路:判斷字串s和t是不是字母異位詞
使用新的函式簡化**
*/class
solution
if(s.
length()
== t.
length()
)for
(int i =
0; i < t.
length()
; i++)}
for(
int i =
0; i < s.
length()
; i++)}
}return
true;}
}
242 有效的字母異位詞
給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的乙個字母異位詞。示例 1 輸入 s anagram t nagaram 輸出 true示例 2 輸入 s rat t car 輸出 false說明 你可以假設字串只包含小寫字母。class solution object def isa...
242 有效的字母異位詞
給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的乙個字母異位詞。示例 1 輸入 s anagram t nagaram 輸出 true 示例 2 輸入 s rat t car 輸出 false 說明 你可以假設字串只包含小寫字母。class solution def isanagra...
242 有效的字母異位詞
給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的乙個字母異位詞。輸入 s anagram t nagaram 輸出 true輸入 s rat t car 輸出 false方法1 類似雜湊 還是重複問題 首先需要明白題的意思,其實就是比較兩個字串中字母是否相同,在相同的情況下比較該字元...