一、顺序查找

1、查找条件

有序或无序数组

2、算法描述

按顺序依次比较每个关键字,直到查到为止。

3、平均时间复杂度

O(n)

二、折半查找

1、查找条件

有序

2、算法描述

假设数据是按升序排序的,对于给定值key,从序列的中间位置k开始比较,如果当前位置arr[k]值等于key,则查找成功;若key小于当前位置值arr[k],则在数列的前半段中查找,arr[low,mid-1];若key大于当前位置值arr[k],则在数列的后半段中继续查找arr[mid+1,high],直到找到为止

3、平均时间复杂度

O(log2(n))

三、二叉排序树查找

1、查找条件

二查排序树

2、算法描述

若b是空树,则搜索失败,若x等于b的根节点的数据域之值,则查找成功;若x小于b的根节点的数据域之值,则搜索左子树反之查找右子树。

3、平均时间复杂度

O(log2(n))

四、哈希查找

1、查找条件

哈希表

2、算法描述

根据键值方式(Key value)进行查找,通过散列函数,定位数据元素。

3、平均时间复杂度

O(1)

五、思维导图

查找算法

 

相关文章:

  • 2021-09-25
猜你喜欢
  • 2022-12-23
  • 2022-02-06
  • 2022-12-23
  • 2021-12-26
相关资源
相似解决方案