折半查找的实现
2016-04-05 21:40
351 查看
关于折半查找的程序与大家分享:
//折半查找的方法 #include<stdio.h> #include<stdlib.h> int bin_search(int ch, int arr[], int len) { int left=0; int right=len-1; int mid; while (left <= right) { mid = (left + right) >> 1; //mid=((right-left)>>1)+left; //mid=(right&left)+((left^right)>>1) if (arr[mid] < ch) { left = mid + 1; } else if (arr[mid] > ch) { right = mid - 1; } else return mid; } return 0; } int main() { int ret; int num; scanf("%d", &num); int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; ret = bin_search(num, arr, sizeof(arr) / sizeof(arr[0])); printf("%d", ret); system("pause"); return 0; }
相关文章推荐
- UITableView 的一些冷知识点
- 二叉搜索树的后序遍历序列
- java实现数据压缩的哈夫曼(Huffman)算法
- Dell服务器之RAID卡介绍及监控方法
- docker常用命令
- #1039 : 字符消除
- SpringMVC
- 利用爬虫获取豆瓣上可能喜欢的书籍
- JDK7浅解
- java swing 之 JScrollPane(滚动面板)的使用
- android日常 游戏:跳舞男孩
- POJ 1930 Dead Fraction(循环小数转换成分数)
- 循序渐进之Spring AOP(1) - 原理
- 第四周作业
- Java入门:基础算法之线性搜索
- appium 获取元素方法
- 读书有感
- OnTouchListener与OnClickListener冲突问题解决思路
- JScrollPane 添加到流式布局的有多个JButton的JPanel上,如何使水平拉伸保持流式布局特点,垂直加滚动条?
- PB9写的一个拆解SQL语句的通用函数