当前位置 : 主页 > 编程语言 > c语言 >

【算法】二分查找实现过程

来源:互联网 收集:自由互联 发布时间:2023-08-25
1、二分查找的基本思想是,要查找的值和整个数组序列的中间值做比较,确认该值在其中一半里,只要在数组序列一半中继续搜索。 2、采用二分查找方法的前提条件是数组或线性表中

1、二分查找的基本思想是,要查找的值和整个数组序列的中间值做比较,确认该值在其中一半里,只要在数组序列一半中继续搜索。

2、采用二分查找方法的前提条件是数组或线性表中元素必须按照大小有序排列。代码如下,

int main() {

	int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
	int k = 7;

	int sz = sizeof(arr) / sizeof(arr[0]);
	int left = 0;
	int right = sz;
	int mid = 0;

	printf("输入要找的数字:");
	scanf("%d", &k);

	while (left <= right) {

		mid = (left + right) / 2;

		if (arr[mid] > k) {
			right = mid - 1;
		} else if (arr[mid] < k) {
			left = mid + 1;
		} else {
			printf("找到了,下标是:%d\n", mid);
			break;
		}
	}

	if (left > right) {

		printf("找不到!");
	}
}

输出结果:

【算法】二分查找实现过程_二分查找

上一篇:C++基础-STL stack 栈
下一篇:没有了
网友评论