首页 > 就业 > 笔试

二分查找算法的两种实现方式

二分查找算法的两种实现方式



二分查找算法的两种实现方式

  1)递归方法实现:

  int BSearch(elemtype a[],elemtype x,int low,int high)

  /*在下届为low,上界为high的数组a中折半查找数据元素x*/

  {

  int mid;

  if(low>high) return -1;

  mid=(low+high)/2;

  if(x==a[mid]) return mid;

  if(x else return(BSearch(a,x,mid+1,high));

  }

  2)非递归方法实现:

  int BSearch(elemtype a[],keytype key,int n)

  {

  int low,high,mid;

  low=0;high=n-1;

  while(low<=high)

  {

  mid=(low+high)/2;

  if(a[mid].key==key) return mid;

  else if(a[mid].key else high=mid-1;

  }

  return -1;

  }

    版权声明:此文自动收集于网络,若有来源错误或者侵犯您的合法权益,您可通过邮箱与我们取得联系,我们将及时进行处理。

    本文地址:https://www.gunzhua.com/jiuye/bishi/37749.html

相关内容

热门阅读
随机推荐