利用函数进行二分法查找
2017-04-16 22:53
176 查看
#include<stdio.h> int binary_search(int arr[],int key,int left,int right)//先定义二分查找的函数 { while(left<=right) { int mid = left+((right-left)>>1); if(key > arr[mid]) { left = mid+1; } else if(key < arr[mid]) { right = mid-1; } else { return mid; } } return -1; } int main() { int arr[]={1,2,3,4,5,6,7,8,9,10};//定义一个数组 int key = 4;//在数组中找的目标数 int sz = sizeof(arr)/sizeof(arr[0]);//数组中有多少个元素 int ret = binary_search(arr,key,0,9);//定义一个接收变量接收返回值 if(ret==-1) { printf("找不到\n"); } else { printf("找到了: %d\n",ret); } return 0; }
相关文章推荐
- 定义数组为有序数组模型,并利用二分法进行查找,删除特定值(缺点:只能删除一个值,若有相同的值,则删除第一个)
- 二分法的应用----------利用随机类生成数组,并用二分法对数组的元素进行查找以及插入操作
- 设计一个程序,从键盘上输入若干字符串,利用算法库中的查找函数对给定的字符串进行查找,将查找后的结果输出
- 利用返回指针值的函数进行查找学生的成绩
- 利用Oracle内置分析函数进行高效统计汇总(2)
- 在SQL2005中利用NTILE()排名函数对现有数据进行排序改造
- 每天学一点flash(2) 利用时间函数来对flash文件进行简单加密
- 每天学一点flash(2) 利用时间函数来对flash文件进行简单加密
- 利用二分法查找数据中的字串JAVA
- php 数组二分法查找函数代码
- 在SQL2005中利用RANK()函数与ROW_NUMBER()对现有数据进行排序改造
- 利用matlab中的函数进行线性回归分析
- 利用Oracle内置分析函数进行高效统计汇总(1)
- 写了个二分法查找函数
- Flex 中利用Matrix 类的rotate函数对图片进行旋转操作的例子
- Flex中如何利用Matrix类的rotate函数对图片进行旋转操作的例子
- 在SQL2005中利用DENSE_RANK()排名函数对现有数据进行排序改造
- 利用SHELL的函数快速查找SD卡的目录名
- 利用数组名作为函数参数传递排序和用指针进行排序
- 利用SQL Server 2005 COLUMNS_UPDATED函数进行数据审计