LeetCode 242 有效的字母異位詞

2021-09-25 06:06:10 字數 1235 閱讀 9035

給定兩個字串 s 和 t ,編寫乙個函式來判斷 t 是否是 s 的字母異位詞。

示例 1:

輸入:s = "anagram", t = "nagaram"輸出:true
示例 2:

輸入:s = "rat", t = "car"輸出:false
說明:

你可以假設字串只包含小寫字母。

1. 直接對兩個字串排序

2. 對於每乙個字串構建乙個map,最終比較兩個字串各自的map是否一樣

之前在對每乙個字串構建乙個屬於它自己的map時,我腦子中想的用2層迴圈,唉菜雞想法。。其實一次遍歷就可以完成這件事。

for i in s:

map_1[i]=map_1.get(i,0)+1

# get(key,0) 獲取字典中指定key的value,如果沒有的話返回0,並且如果沒有的話,map_1[i] 也就建立了乙個新的鍵值對,鍵就是這裡的i

class solution:

def isanagram(self, s: str, t: str) -> bool:

map_1={}

map_2={}

for i in s:

map_1[i]=map_1.get(i,0)+1

for i in t:

map_2[i]=map_2.get(i,0)+1

return map_1 == map_2

class solution:

def isanagram(self, s: str, t: str) -> bool:

return sorted(s) == sorted(t)

#因為python內內建了sorted函式,直接就可以用。

sort 與 sorted 區別:

sort 是應用在 list 上的方法,sorted 可以對所有可迭代的物件進行排序操作。

list 的 sort 方法返回的是對已經存在的列表進行操作,無返回值,而內建函式 sorted 方法返回的是乙個新的 list,而不是在原來的基礎上進行的操作。

Leetcode 242 有效的字母異位

time 20190901 type easy 給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的字母異位詞。示例 1 輸入 s anagram t nagaram 輸出 true 示例 2 輸入 s rat t car 輸出 false 說明 你可以假設字串只包含小寫字母。高階 如果...

LeetCode242 有效的異位詞

給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的字母異位詞。示例 1 輸入 s anagram t nagaram 輸出 true示例 2 輸入 s rat t car 輸出 false說明 你可以假設字串只包含小寫字母。高階 如果輸入字串包含 unicode 字元怎麼辦?你能否調整...

LeetCode 242 有效的字母異位

給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的字母異位詞。說明 你可以假設字串只包含小寫字母。高階 如果輸入字串包含 unicode 字元怎麼辦?你能否調整你的解法來應對這種情況?思路 兩個字串長度不等,則不滿足。兩個字串相等,則滿足。定義兩個陣列,分別記錄s和t中每個字母出現的次...