淘宝直播要先建设个网站吗,群艺馆网站建设方案,软件开发公司简介,wordpress终极用户中心看题目前心里随便想的#xff1a;
这个是我第一次正式刷LeetCode的第一道题#xff0c;我完全不懂任何的原理#xff0c;学习数据结构也有点太久远了#xff0c;现在都有一些忘记了#xff0c;所以还是一点点学习吧#xff08;嘿嘿#xff09;
题目
给你一个字符串数…看题目前心里随便想的
这个是我第一次正式刷LeetCode的第一道题我完全不懂任何的原理学习数据结构也有点太久远了现在都有一些忘记了所以还是一点点学习吧嘿嘿
题目
给你一个字符串数组请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的所有字母得到的一个新单词。
示例 1:
输入: strs [eat, tea, tan, ate, nat, bat]
输出: [[bat],[nat,tan],[ate,eat,tea]]
示例 2:
输入: strs []
输出: [[]]示例 3:
输入: strs [a]
输出: [[a]]提示
1 strs.length 1040 strs[i].length 100strs[i] 仅包含小写字母 拿到题目的想法点不一定正确
对列表先获取第一个词然后获取每一个字母A对应0Z对应23然后重新排列每一个词然后两两作比对如果两个词对应上了或者多个词对应上了就输出原来样式的匹配词的列表形式然后这样依次类推有一个问题就是重复怎么样去掉。但是这样应该空间复杂度和时间复杂度都拉满了。
--所以我打算看一下题解 题解 思路
字符串处理
PS什么是字符串处理之后学习的时候可以看一下 Code
class Solution(object):def groupAnagrams(self, strs):d defaultdict(list)for s in strs: d[.join(sorted(s))].append(s)return list(d.values())
我的拆分 1.创建了一个默认字典“d”
2.for循环“s”是字符串“strs”的每一个元素如tea for s in strs: d[.join(sorted(s))].append(s)这个里面的“:”表示是for循环的开始只是吧d[.join(sorted(s))].append(s)和“”写到了一起没有特殊的语法。.join(list): .join()是Python字符串的一个方法它合并或“连接”列表中的所有字符串元素并在每个元素之间插入指定的分隔符。在你的代码中分隔符是空字符串所以 .join()就直接将列表中的字符串元素组合在一起没有额外的字符被插入。也就是s取来然后用无间隔的‘’连接重新排序好的字符串
比如说‘eat’重新排列是ate。然后在d的这个键 后面的值是原来的s如果有这个键的列表就把这个s加入到这个列表当中如果没有这个列表就创建一个这个列表然后把s加入。 2024年3/8日-第一刷