diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/README.md" "b/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/README.md" index c8026953e1527..e4e815b11b364 100644 --- "a/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/README.md" +++ "b/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/README.md" @@ -158,6 +158,26 @@ function groupAnagrams(strs: string[]): string[][] { } ``` +#### Swift + +```swift +class Solution { + func groupAnagrams(_ strs: [String]) -> [[String]] { + var d = [String: [String]]() + + for s in strs { + let sortedStr = String(s.sorted()) + if d[sortedStr] == nil { + d[sortedStr] = [String]() + } + d[sortedStr]!.append(s) + } + + return Array(d.values) + } +} +``` + diff --git "a/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/Solution.swift" "b/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/Solution.swift" new file mode 100644 index 0000000000000..0fa6a6852ffc9 --- /dev/null +++ "b/lcof2/\345\211\221\346\214\207 Offer II 033. \345\217\230\344\275\215\350\257\215\347\273\204/Solution.swift" @@ -0,0 +1,15 @@ +class Solution { + func groupAnagrams(_ strs: [String]) -> [[String]] { + var d = [String: [String]]() + + for s in strs { + let sortedStr = String(s.sorted()) + if d[sortedStr] == nil { + d[sortedStr] = [String]() + } + d[sortedStr]!.append(s) + } + + return Array(d.values) + } +} \ No newline at end of file