由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 有什么方法可以优化hashtable?
相关主题
弱弱的问问hash, hashtable? (转载)What's the efficient way to merge two BST?
面试遇到这问题,求算法能有人详细讲一下这两道google的面试题吗?
分别用LinkedList和HashMap构建字典树(Compact Trie)怎么做来来来,我也问个题 (转载)
请教双键的动态结构用什么数据结构比较好?complexity of set operation?
请教大家一个问题 (转载)关于C++中一个Class的大小 (转载)
这个perl的简单小程序为什么不work? (转载)几道面试题:memory, sort, 等
hashtable.containskey 怎么做到 O(1)的which is faster, table look up or bitwise operator?
[合集] 如何能让这个程序快一点呢?太慢了one more c++ question
相关话题的讨论汇总
话题: hashtable话题: getanagram话题: 函数话题: class话题: word
进入Programming版参与讨论
1 (共1页)
n********5
发帖数: 323
1
一道面试题,是需要写一个函数getAnagram()
这个函数是定义在一个Class里面,这个Class还有一个函数addWord(),用来向这个类
加入任意
word。
我的思路是用hashtable,当add word的时候,把需要加入的word sort一遍,然后查找
hash,如
果已经存在,就是用linkedlist的方式,把新加的word link到最后。这样getAnagram(
)只需要遍
历一遍这个hashtable就可以知道当前输入的words 所有的Anagram。
如果考虑sort的时间复杂度是O(nlogn), hashtable的lookup是O(1),这个getAnagram(
)函数的效
率是O(nlogn),假设getAnagram()的pass in是需要查找的word。
这个思路还有什么其他办法可以优化的吗?或者还有其他思路吗?谢啦!
n********5
发帖数: 323
2
update 一下另外的思路,可以是用BST来存anagram,或者trie,,不知道还有没有其
他方法。。。
s*w
发帖数: 729
3
到底是写一个还是两个函数,还是整个class带这两个函数?
n********5
发帖数: 323
4
要求design整个class,包括写两个函数。
整个class带这两个函数,class design 我的思路是hashtable,Addword()我也有思路
,,不过
如果想看看能有更优解。

【在 s*w 的大作中提到】
: 到底是写一个还是两个函数,还是整个class带这两个函数?
1 (共1页)
进入Programming版参与讨论
相关主题
one more c++ question请教大家一个问题 (转载)
Please help me prove SUM(logi) is Omega(nlogn) (转载)这个perl的简单小程序为什么不work? (转载)
那里能找到那个算法题hashtable.containskey 怎么做到 O(1)的
Efficient algorithms for finding number, help please[合集] 如何能让这个程序快一点呢?太慢了
弱弱的问问hash, hashtable? (转载)What's the efficient way to merge two BST?
面试遇到这问题,求算法能有人详细讲一下这两道google的面试题吗?
分别用LinkedList和HashMap构建字典树(Compact Trie)怎么做来来来,我也问个题 (转载)
请教双键的动态结构用什么数据结构比较好?complexity of set operation?
相关话题的讨论汇总
话题: hashtable话题: getanagram话题: 函数话题: class话题: word