C Tutorial/Search Sort/Binary Search

Материал из C\C++ эксперт
Версия от 13:32, 25 мая 2010; Admin (обсуждение | вклад) (1 версия: Импорт контента...)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

The Binary Search

<source lang="cpp">#include<stdio.h>

 int binary_search(char *items, int count, char key)
 {
   int low, high, mid;
   low = 0; high = count-1;
   while(low <= high) {
     mid = (low+high)/2;
     if(key < items[mid]) 
         high = mid-1;
     else if(key > items[mid]) 
         low = mid+1;
     else 
         return mid; /* found */
   }
   return -1;
 }
 int main(void){
    char *str = "123456";
   
    int index = binary_search(str, 6, "3");
   
    printf("%d",index);
 }</source>
2