采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,您github里面49题的第二种方法,对于每个字符串,都可以将其转化为26个数字组成的数组,通过遍历每个字符串从而操作这个数组,只不过在哈希表里存储的是“数组”+“#”的模式,然后判断哈希表的key与之是否匹配就可以了呢? 我想问的是,为啥要数字+#号存呢,这个方法我几乎完全不可能想出来。。。。
其实就是一个分隔符,因为问题中的单词字符串里只有小写字母,那我就选择使用 '#' 做分隔符。
实际上,使用 '@', '$', '%', '?', ';', 用什么做分隔符都行。
这就好像大多数程序语言的 statements 之间选择使用 ; 做分隔符一样。
继续加油!:)
波波老师,计数分类的方法我看您代码还是不太明白。getKey 这个方法是如何判断两个string 是否为Anagram 的?谢谢!
每个字符的频率是一个数字,把这些数字按照组成一个字符串,中间用 # 分割,如果两个单词是 anagram,这个字符串一定相等,本质是这两个字符串每个字符的频率一定相等。使用几个测试用例,打印出我们对每个 key 计算出的这个字符串,研究一下?加油!:)
登录后可查看更多问答,登录/注册
课程配套大量BAT面试真题,高频算法题解析,强化训练
1.0k 13
1.1k 12
611 11
1.5k 10
1.1k 10