久久99热66热这里只有精品,特黄特色的大片在线观看,亚洲日本三级在线观看,国产三级农村妇女在线,亚洲av毛片免费在线观看,哺乳叫自慰在线看,天天干美女av网

折半查找算法的實現(xiàn) -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.dameics.com - 電腦資料】

    算法設計思想如下:

    (1)設置初始區(qū)間,low=1;high=length,

折半查找算法的實現(xiàn)

。

    (2)當low>high時,返回查找失敗信息。

    (3)取中點,low<=high,mid=(low+high)/2。

    a.若kx

    b.若kx>a[mid],查找改在右半區(qū)進行,low=mid+1;轉向步驟(2)。

    c.若ax=a[mid],查找成功,返回數據位置。

    代碼實現(xiàn):

   

#include <stdio.h>int b_search(int x, int a[], int n)  //折半查找函數{    int low = 0;    int high = n ;    if (low > high)    {        return -1;    }    else    {        while (low <= high)        {            int mid = (low + high) / 2;            if (a[mid] < x)            {                low = mid + 1;            }            else if (a[mid] > x)            {                high = mid - 1;            }            else            {                return mid;            }        }    }         return -1;}int main(){    int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };    int key = 0;    int sz = sizeof(arr) / sizeof(arr[0]);    scanf("%d", &key);        int ret = b_search(key, arr, sz);    if (ret == -1)    {        printf("不存在這個數!\n");    }    else    {        printf("%d\n", ret);    }    return 0;}

最新文章