AI智能
改变未来

C语言中的择中,二分查找算法解析

Define:

从某种意义上讲就是执行一次把所剩下的下标(开头和结尾)/2得一个中间量,然后进行比较找到自己想要找到的数。这样的算法会让执行过程简洁N倍。  

写在前面: 我也只是个小白在博客上不断地锻炼自己,希望得到大家的喜欢,有什么问题我们共同交流,进步。

接下来我们举一个简单例子来表明我的思想。希望读者能够理解代码意思!!!!!!!

#include <stdio.h>#include <string.h>#include <Windows.h>#include <stdlib.h>int main(){int a,sz,left,right,mid;int num[]={1,2,3,4,5,6,7,8,9,10};printf (\"Please enter a number:\\n\");scanf (\"%d\",&a);sz=sizeof(num)/sizeof(num[0])-1;                                             //计算数组个数left=0;                                                                      //定义数组开始和结尾下标值right=sz-1;while (left<=right)                                                          //循环体循环,需要读者自己去领悟{mid=(left+right)/2;if(num[mid]>a){right=mid-1;}else if(num[mid]<a){left=mid+1;}else{printf (\"找到了,下标为:%d\",mid);break;}}if(left>right){printf (\"不好意思没有找到\\n\");}return 0;}

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » C语言中的择中,二分查找算法解析