• 查找


    顺序查找同叫线性查找

    有序查找包括:折半查找法、插值查找(按比例查找)、斐波那契查找(黄金分割法查找)
    无序查找:二叉排序树

    顺序查找

    原理是让关键字与队列中的数从最后一个开始逐个比较,直到找出与给定关键字相同的数为止,它的缺点是效率低下。

    • 必须是顺序

    • 要进行顺序查找,则线性表既可以以顺序方式存储,也可以链式方式存储;

    • 若表中元素个数为n,则顺序查找的平均比较次数为(n+1)/2

      二分查找 (别称:折半查找)

    • 必须以顺序存储结构

    • 必须按关键字大小有序排序

    • 表必须有序,且表只能以顺序方式存储

    • 对线性表进行二分查找时,要求线性表必须以链接方式存储,且数据元素有序.换一句话说,适用于折半查找的表的存储方式及元素排列要求为顺序方式存储,元素有序。

    • 要进行折半查询,则线性表必须以顺序方式存储,且数据已按递增或递减顺序排好;

    • 若表中元素个数为n,折半查找的平均比较次数为log2(n+1)

    • 折半查找的时间复杂性为O(logn)

      分块查找 (别称:索引顺序查找)

    分块查找是折半查找和顺序查找的一种改进方法

    • 只要求索引表是有序的,对块内节点没有排序要求,因此特别适合于节点动态变化的情况。

    • 数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块。

    • 当采用分快查找时,数据的组织方式为数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块

  • 相关阅读:
    Silverlight 学习笔记(二)silverligth 界面布局
    (C#)WinForm窗体间传值
    软件开发所需要的十三个文档
    XP下安装SQL2000企业版本(转载)
    .net 框架下快速Web开发(一)——纠结的里程
    .net MVC 框架调试过程中,产生大量的临时文件
    认识NHitenate
    如何循序渐进向.Net架构师发展[转载]
    核桃煲鸡汤
    .NET获取客户端信息 (C#)
  • 原文地址:https://www.cnblogs.com/fly-me/p/cha-zhao.html
Copyright © 2020-2023  润新知