假设我们有一组字符串。我们必须将字谜分组在一起。因此,如果[[进餐],“茶”,“棕褐色”,“吃”,“ nat”,“蝙蝠”]],则这些组是[[“吃”,“吃”,“茶”],[“ nat“,” tan“],[” bat“]]
为了解决这个问题,我们将遵循以下步骤-
将res定义为映射
对于我在字符串数组
在结果中插入我[x]
x:= x并连接,对i进行排序
如果x结果
其他结果[x]:= [i]
以列表形式返回res的值
让我们看下面的实现以更好地理解-
class Solution:
def groupAnagrams(self, strs):
result = {}
for i in strs:
x = "".join(sorted(i))
if x in result:
result[x].append(i)
else:
result[x] = [i]
return list(result.values())
ob1 = Solution()
print(ob1.groupAnagrams(["eat", "tea", "tan", "ate", "nat", "bat"]))["eat", "tea", "tan", "ate", "nat", "bat"]
输出结果
[["ate","eat","tea"],["nat","tan"],["bat"]]