Leetcode練習(Python):哈希表類:第49題:字母異位詞分組:給定一個字符串數組,將字母異位詞組合在一起。字母異位詞指字母相同,但排列不同的字符串。


題目:
給定一個字符串數組,將字母異位詞組合在一起。字母異位詞指字母相同,但排列不同的字符串。

說明:

  • 所有輸入均為小寫字母。
  • 不考慮答案輸出的順序。

思路:

使用sort()將單詞排序。

程序:

class Solution:
    def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
        length = len(strs)
        if length <= 0:
            return [[]]
        if length == 1:
            return [[strs[0]]]
        myHashMap = {}
        for data in strs:
            data1 = list(data)
            data1.sort()
            data2 = ''.join(data1)
            if data2 in myHashMap:
                myHashMap[data2].append(data)
            else:
                myHashMap[data2] = [data]
        result = []
        for key in myHashMap.keys():
            result.append(myHashMap[key])
        return result


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM