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

时间:2020-11-21 18:20:08 笔试题目 我要投稿

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

  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;

  }

【二分查找算法的两种实现方式】相关文章:

图像拼接算法及实现08-16

Java多线程的实现方式10-07

四种简单的排序算法的php实现11-18

深化采购管理实现降本的方式09-08

JavaScript数据结构与算法中集合的实现11-18

oracle两种用户认证方式简述11-04

英国留学两种主要汇款方式08-16

有关基于Mapx的最短路径选择算法的实现08-22

常用排序算法之JavaScript实现代码段10-27