1. 程式人生 > >C語言實現折半查詢演算法

C語言實現折半查詢演算法

折半查詢演算法
將數列按有序化排列,查詢過程中按跳躍方式查詢。即先以有序數列的中間位置為比較物件,如果要查詢的元素值小於該中點元素值,則將待查詢序列縮小為左半部分,否則為右半部分。通過一次比較,將查詢區間縮小一半。

int fun(int  a[], int  m )
{  
   int  low = 0, high = N-1, mid;
   while(low <= high)
   { 
      mid = (low+high)/2;
      if(m < a[mid])
        high = mid-1;
      else if(m >
a[mid]) low = mid+1; else return(mid); } return(-1); }