利用C语言实现折半查找

来源:互联网 发布:java list泛型 遍历 编辑:程序博客网 时间:2024/06/05 00:59

折半查找,顾名思义,就是一组有顺序的数,按照比较大小的方法找出某一个数,类似二分法

代码如下:

#include<stdio.h>#include<stdlib.h>void find(int arr1[], int key, int right){int left = 0, mid;while (left <= right){mid = (left + right) / 2;if (key == arr1[mid]){printf("\n找到了,您要找的数是%d,位置为%d\n", key, mid+1);break;}else if (key > arr1[mid])left = mid + 1;else right = mid - 1;}if (left = right)printf("\n您要找的数不存在,请重试!");}int main(){int arr[] = {1, 3 ,4 ,5 ,6, 7, 9 ,13, 15 ,36 };int k,len;len = sizeof(arr);printf("请输入你要查找的数:");scanf("%d", &k);find(arr,k,len);system("pause");return 0;}


本文出自 “分享中进步” 博客,请务必保留此出处http://xmwen1.blog.51cto.com/10730069/1705052

0 0
原创粉丝点击