二分查找

#include <stdio.h>


int main(void)
{
    int array[10] = {4, 12, 24, 36, 47, 58,59, 66, 77, 87};
    int l =0, r= 9;
    int a = 87;

    while(1)
    {
        if(a >array[(l+r)/2])
            l = (l+r)/2+1;
        if(a < array[(l+r)/2])
            r = (l+r)/2-1;

        if(a == array[(l+r)/2])
        {
            printf("data = %d\n", array[(l+r)/2]);
            break;
        }
    }
    return 0;
}

 

posted on 2017-12-22 10:54  131927  阅读(106)  评论(0)    收藏  举报

导航