查找(6)---总结

几种查找方式的对比:

符号表渐进性能的总结:
算法最坏查找时间最坏插入时间平均查找时间平均插入时间内存使用
顺序查找NNN/2N48N
二分查找lgNNlgNN/216N
二叉树查找NN1.39lgN1.39lgN64N
红黑树2lgN2lgN1.00lgN1.00lgN64N
拉链法<lgN<lgNN/(2M)N/M48N+32M
线性探测法clgNclgN<1.5<2.532N~128N


各种实现的优缺点对比:

顺序查找:(链表)

优点:适用于小型问题

缺点:大型符号表很慢

二分查找:(有序数组)

优点:最优的查找效率和空间需求,能够进行有序性相关的操作

缺点:插入操作很慢

二叉查找树

优点:实现简单,能够进行有序性相关的操作

缺点:没有性能上界的保证,链接需要额外的空间

红黑树

优点:最优的插入和查找效率,能够进行有序性相关的操作

缺点:链接需要额外空间

散列表

优点:能够快速地查找和插入常见类型的数据

缺点:需要计算每种数据的散列,无法进行有序性相关的操作,链接和空结点需要额外空间


根据经验法则:大多数程序员,第一时间选择的是散列表,在其他因素更重要的时候才会选择红黑树,当然这仅限于所介绍的几种算法。


符号表之所以是算法技术为现代计算机基础设计的一大贡献,是因为在很多实际应用中他都能够节省大量的成本,使得各个领域许多无法解决的问题都能够解决,也就是说查找算法极为重要。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值