折半查找

来源:互联网 发布:地税优化营商环境 编辑:程序博客网 时间:2024/06/05 14:50

查找 5 成功

这里写图片描述

这里写图片描述

查找失败

high比low小,则查找失败

//折半查找typedef struct{    int num;}student;typedef struct{    int length;    student st[MAX + 1];}student_t;int Binary_Search(student_t st_t, student st){    int low = 1, high = st_t.length, mid = 0;    while (low<=high)    {        mid = (low + high) / 2;        if (st_t.st[mid].num == st.num)        {            return mid;        }        if (st_t.st[mid].num > st.num)        {            high = mid - 1;        }        if (st_t.st[mid].num < st.num)        {            low = mid + 1;        }    }    return 0;}int main(void){    student_t st_t = { 5,0,10,20,30,40,50 };    student st = {30};    printf("%d\n",Binary_Search(st_t, st));    return 0;}
原创粉丝点击