二分查找(代码练习)
Posted zhm521
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二分查找(代码练习)相关的知识,希望对你有一定的参考价值。
//第一次尝试:
#include<stdio.h> int main() { int arr[] = { 1,2,3,4,5,6,7 };//查找6 int left = 0; int right = sizeof(arr) / sizeof(arr[0]) - 1; //printf("%d ", right); int toFind = 6; while(left<=right) { int mid = (left + right) / 2; if (arr[mid]>toFind) { right=mid-1; } else if (arr[mid] < toFind) { left = mid + 1; } else { printf("下标为%d ", mid); break; } } if (left > right) { printf("未找到 "); } return 0; }
//实现了二分查找,但仅限于有序数列才有效,因此代码中给定了一组数组,未让用户手动输入。
//在进行一次二分查找之后,要注意mid的加或减,不能搞混了。
以上是关于二分查找(代码练习)的主要内容,如果未能解决你的问题,请参考以下文章