比邻店网站开发,全网,做特效的网站,网站建设学生选课系统设计二分查找 一.什么是二分查找二.代码实现 一.什么是二分查找 在⼀个升序的数组中查找制定的数字n#xff0c;很容易想到的⽅法就是遍历数组#xff0c;但是这种⽅法效率⽐较低#xff0c; ⽐如我买了⼀双鞋#xff0c;你好奇问我多少钱#xff0c;我说不超过300元。你还是好… 二分查找 一.什么是二分查找二.代码实现 一.什么是二分查找 在⼀个升序的数组中查找制定的数字n很容易想到的⽅法就是遍历数组但是这种⽅法效率⽐较低 ⽐如我买了⼀双鞋你好奇问我多少钱我说不超过300元。你还是好奇你想知道到底多少我就让 你猜你会怎么猜你会1234…这样猜吗显然很慢⼀般你都会猜中间数字⽐如150然 后看⼤了还是⼩了这就是⼆分查找也叫折半查找。 二.代码实现 int main()
{int arr[] { 1,2,3,4,5,6,7,8,9,10 };int left 0;int right sizeof(arr) / sizeof(arr[0]) - 1;int key 0;scanf(%d, key);int mid 0;int find 0;while (left right){mid (left right) / 2;if (arr[mid] key){right mid - 1;}else if (arr[mid] key){left mid 1;}else{find 1;break;}}if (1 find)printf(找到了,下标是%d\n, mid);elseprintf(找不到\n);
}运行结果