mirror of
https://github.com/ShusenTang/LeetCode.git
synced 2024-09-02 14:20:01 +00:00
Update 49. Group Anagrams.md
This commit is contained in:
parent
6870e8cf79
commit
82daf378b4
@ -6,9 +6,9 @@
|
||||
2. 遍历一遍,然后用一个数组记录26个字母每个字母出现的次数,再比较这个次数(类似桶排序)。
|
||||
|
||||
如果方法1使用桶排序的话其实两种方法就是差不多的了。
|
||||
解决了如何判断得问题,算法思路就清晰了:
|
||||
对strs中的每个字符串的副本str,对其进行排序(可以使用桶排序也可使用现成的sort),然后用一个map来记录这个str是否在以前出现过。
|
||||
若`map[str] == 0`则说明没有出现过,否则则出现过,map[str]的值代表最终返回结果数组res对应元素的下标加一。
|
||||
解决了如何判断的问题,算法思路就清晰了:
|
||||
对strs中的每个字符串的副本str,对其进行排序(可以使用桶排序也可使用现成的sort),然后用一个hash表mp来记录这个str是否在以前出现过。
|
||||
若`mp[str] == 0`则说明没有出现过;否则则出现过,mp[str]的值代表最终返回结果数组(即代码中的res)中对应元素的下标加一。
|
||||
|
||||
若strs中有n个字符串,每个字符串长度平均为m,则桶排序时间复杂度为O(m),如果使用的是unordered_map(对应hash)则查找复杂度O(1),所以总体时间复杂度O(mn)。
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user