49. 字母异位词分组
题目
给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。
示例 1:
1 | 输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"] |
示例 2:
1 | 输入: strs = ["a"] |
示例 3:
1 | 输入: strs = [""] |
解题思路
- 利用哈希表。
- 首先将数组中每个字符串按字母组成由大到小进行排序并保存在新的数组中,保证原数组与新数组元素索引一致。
- 对新数组进行遍历,将元素存储在哈希表中。新数组元素为键,原数组对应索引的值作为值进行键值对存储。
- abc => [abc,cba,acb]
1 | /** |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 姚永坤的小窝!
评论