您当前的位置: 首页 >  数据结构与算法

星拱北辰

暂无认证

  • 0浏览

    0关注

    1205博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【数据结构与算法】比较法分析查找算法与查找结构

星拱北辰 发布时间:2019-10-11 11:37:58 ,浏览量:0

基本的查找技术:

  • 线性表的查找技术
    • 顺序查找
      • 分块查找
    • 二分查找(折半查找)
      • 插值查找
  • 树表的查找技术
    • 二叉排序树
    • 平衡二叉树
    • B树(B+树、B-树等)
  • 散列表的查找技术
    • 开散列表
    • 闭散列表

顺序查找和其他查找技术相比,缺点是平均查找长度较大,特别是当查找集合较大的时候,查找效率较低(线性增长)。然而,顺序查找的优点也很突出:算法简单+适用面广。它对表中记录的储存无任何要求,顺序和链接都可;对表中数据有序性也无要求,可以顺序可以乱序。 对比顺序查找,二分查找性能较好,但它要求线性表中的记录必须是有序的,而且必须是顺序存储的。 顺序查找和二分查找一般只能适用于静态查找。 而二叉排序树的查找与深度有关,最好情况查找效率O(logN),对数级,接近二分查找;最坏情况效率O(N),退化为顺序查找。 散列查找与上述不同,它基于计算,不需要比较。虽然实际应用中关键码集合常常存在同义词,但是在选定合适的散列函数以后,仅需要进行少量的关键码比较,因此散列函数查找性能较高。很多情况下,散列表的空间都比查找集合大,此时虽然浪费了一定的空间,但换来的是查找效率。

此处补充一点点散列(Hash)的笔记: 散列函数的设计和冲突的处理是散列查找的重难点。

关注
打赏
1660750074
查看更多评论
立即登录/注册

微信扫码登录

0.0441s