社区
C语言
帖子详情
哈希表PK 平衡二叉树!!!!!
liulili19830401
2008-11-29 03:08:51
设计两种数据结构来查找:哈希表 平衡二叉树。哪种情况一定不能用哈希表,只用平衡二叉树!!
...全文
1268
17
打赏
收藏
哈希表PK 平衡二叉树!!!!!
设计两种数据结构来查找:哈希表 平衡二叉树。哪种情况一定不能用哈希表,只用平衡二叉树!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jqx_ah
2008-12-09
打赏
举报
回复
[Quote=引用 10 楼 xinke87 的回复:]
引用楼主 liulili19830401 的帖子:
设计两种数据结构来查找:哈希表 平衡二叉树。哪种情况一定不能用哈希表,只用平衡二叉树!!
深信服笔试题 倒数第二题
哈希表:哈希表查找速度比较快,但是要耗比较多的内存。所以比较适用于对查找速度要求比较高、且内存空间足够的时候
平衡二叉树:如果想在以后用二分法查找的时候查找速度比较快的话用建立平衡二叉树的方法
内存不足的时候 最好用平衡树
[/Quote]
我就该多来论坛看看的
昨天湖大 参加了深信服的笔试~,看样子试题是没有变! 倒数2就是这个题
liulili19830401
2008-12-08
打赏
举报
回复
哪种情况一定不能用哈希表,只用平衡二叉树!!
"一定"让我怕怕
e_sharp
2008-12-04
打赏
举报
回复
UP
jeff_nie
2008-12-03
打赏
举报
回复
学习.
jiyanmoyu
2008-12-01
打赏
举报
回复
以下三种情况,很不应该用哈希方法:
1.内存不足时;
2.输入数据重复太多或哈希冲突太多时;
3.没有合适的哈希方法或数据本身就不能哈希时.(如某类型只定义了相等,大于,小于三个操作时......那你怎么去哈希呢????)
iambic
2008-12-01
打赏
举报
回复
当对复杂度要求严格的时候,用平衡树。
如果你不清楚复杂度的要求,或者没有什么要求,hash table往往是更好的选择。
但是——实际上,最方便的往往是最好的。
qq675927952
2008-11-30
打赏
举报
回复
up
xinke87
2008-11-30
打赏
举报
回复
[Quote=引用楼主 liulili19830401 的帖子:]
设计两种数据结构来查找:哈希表 平衡二叉树。哪种情况一定不能用哈希表,只用平衡二叉树!!
[/Quote]
深信服笔试题 倒数第二题
哈希表:哈希表查找速度比较快,但是要耗比较多的内存。所以比较适用于对查找速度要求比较高、且内存空间足够的时候
平衡二叉树:如果想在以后用二分法查找的时候查找速度比较快的话用建立平衡二叉树的方法
内存不足的时候 最好用平衡树
jieao111
2008-11-30
打赏
举报
回复
[Quote=引用 5 楼 Chiyer 的回复:]
哈希表主要可以在O(1)时间内对查找对象定位,但是事实上,如果输入集合不确定的情况下,可能出现大量的冲突,虽然有很多好的哈希函数,但是随着随机输入,大量冲突还是不可避免,可能出现最差情况。所以,哈希表如果用在输入集合确定(即以后只会做查询操作)的情况下,选择合适的函数函数和解决冲突的方法(perfect hash)可以在O(1)时间内完成查找
二叉树支持动态的插入和查找,保证操作在O(height)时间,这就是完成了哈希…
[/Quote]up星语哥哥
hhyttppd
2008-11-29
打赏
举报
回复
学习。。。
就呆在云上
2008-11-29
打赏
举报
回复
这个不好说吧
哪个效率高,不是定论的
WingForce
2008-11-29
打赏
举报
回复
呃。。。话说那个平衡2叉树的话。。。效率很低的说,很难实现的说
所以实际运用中,只使用放宽了条件的近似平衡二叉树
星羽
2008-11-29
打赏
举报
回复
哈希表主要可以在O(1)时间内对查找对象定位,但是事实上,如果输入集合不确定的情况下,可能出现大量的冲突,虽然有很多好的哈希函数,但是随着随机输入,大量冲突还是不可避免,可能出现最差情况。所以,哈希表如果用在输入集合确定(即以后只会做查询操作)的情况下,选择合适的函数函数和解决冲突的方法(perfect hash)可以在O(1)时间内完成查找
二叉树支持动态的插入和查找,保证操作在O(height)时间,这就是完成了哈希表不便完成的工作,动态性。但是二叉树有可能出现worst-case,如果输入序列已经排序,则时间复杂度为O(N)
guo_xiaonan
2008-11-29
打赏
举报
回复
感觉用哈弗满快吧
ldhshao
2008-11-29
打赏
举报
回复
[Quote=引用 2 楼 wzg112 的回复:]
没有说一定用哪个结构,只是时间与空间消耗的选择不同,具体要看你的需要
哈希表:哈希表查找速度比较快,但是要耗比较多的内存。所以比较适用于对查找速度要求比较高、且内存空间足够的时候
平衡二叉树:如果想在以后用二分法查找的时候查找速度比较快的话用建立平衡二叉树的方法
[/Quote]
赞同你的观点。
先谢谢你!
可你也没完全回答问题。
wzg112
2008-11-29
打赏
举报
回复
没有说一定用哪个结构,只是时间与空间消耗的选择不同,具体要看你的需要
哈希表:哈希表查找速度比较快,但是要耗比较多的内存。所以比较适用于对查找速度要求比较高、且内存空间足够的时候
平衡二叉树:如果想在以后用二分法查找的时候查找速度比较快的话用建立平衡二叉树的方法
namewchwch
2008-11-29
打赏
举报
回复
先顶下 等人回答
java数据结构算法
稀疏数组、单向队列、环形队列、单向链
表
、双向链
表
、环形链
表
、约瑟夫问题...哈
希
表
、二
叉树
、二
叉树
与数组转换、二叉排序树(BST)、AVL树、线索二
叉树
、赫夫曼树、赫夫曼编码、多路查找树(B树B+树和B*树)、图、图的DFS...
深入Java基础(四)--哈
希
表
(1)HashMap应用及源码详解
今天是研究下哈
希
表
,毕竟我们很多应用层的查找存储框架都是哈
希
作为它的根数据结构进行封装的嘛。今天让我们来深入hashmap,并且对比jdk1.7和1.8的进行学习,学习插入、查询、扩容机制等重要源码。
被人打掉奶瓶都要写的MySQL数据库索引和事务(为什么用B树、B+树不用二叉搜索树和哈
希
表
及基本操作)
被人打掉奶瓶都要写的MySQL索引(为什么用B树、B+树不用二叉搜索树和哈
希
表
......)
二叉查找树、
平
衡二
叉树
、红黑树、B-/B+树性能对比
(1)
平
衡二
叉树
和红黑树 [AVL
PK
RBT] AVL 和RBT 都是二叉查找树的优化。其性能要远远好于二叉查找树。他们之间都有自己的优势,其应用上也有不同。 结构对比 : AVL的结构高度
平
衡,RBT的结构基本
平
衡。
平
衡度AVL ...
【集合】HashMap和ConcurrentHashMap的知识总结
哈
希
表
(hash table)也叫散列
表
,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈
希
表
。 一、什么是哈
希
表
在讨论哈
希
表
之前,我们先大概了解...
C语言
69,382
社区成员
243,074
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章