zoukankan      html  css  js  c++  java
  • 查找

    顺序查找同叫线性查找

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

    顺序查找

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

    • 必须是顺序

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

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

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

    • 必须以顺序存储结构

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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    SQL进阶系列之2自连接
    SQL进阶系列之0窗口函数
    SQL进阶系列之1CASE表达式
    Python for Email
    数据分析的统计基础5
    利用Python openpyxl操作Excel
    SQL基础篇(MICK)
    数据分析的统计基础4
    数据分析的统计基础3
    数据分析的统计基础2
  • 原文地址:https://www.cnblogs.com/fly-me/p/cha-zhao.html
Copyright © 2011-2022 走看看