2016 - 2024

感恩一路有你

顺序表的结构体定义 二分查找和折半查找一样吗?

浏览量:1671 时间:2021-03-15 20:32:07 作者:admin

二分查找和折半查找一样吗?

二进制搜索算法是一种快速搜索算法。当我们在另一个数组中寻找一个数字时,我们通常直接遍历这个数组直到找到这个数字。时间复杂度为O(n)。如果有大量的数据,我们可以使用简单快速的搜索算法二进制搜索算法,也称为半搜索算法。

折半查找算法及代码?

#include<iostream>

#使用命名空间std

模板<class T>

int BinarySearch(ta[],const T&x,int n,int left,int right)

{

if(left>=right)

return-1

else

{

if(a[(left right)/2]==x)

return else if(x>=(left)右)/2)

返回二进制搜索(a,x,n,(左-右)/21,右)

else if(x<(左-右)/2)

返回二进制搜索(a,x,n,左,(左-右)/2-1)

}

}

int main()

{

int a[MAXSize

]int i,len,x,P

CIN>>len

for(I=0I<leni)

CIN>>A[I

]CIN>>X

P=binarysearch(a,x,len,0,len-1)

if(P==-1)

cout<<“数字不存在!”!“<<endl

else

cout<<p 1<<endl

返回0

}

顺序表的结构体定义 折半查找法c语言 折半查找的算法思想

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。