【算法】对分查找(排序队列)
2016-01-27 21:24
351 查看
#include<iostream> #include<ctime> using namespace std; int Find(int s[], int s_num, int n) //对分查找 { int left, right, mid; left = 0; right = n - 1; while (left <= right) { mid = (left + right) / 2; if (s[mid] < s_num) left = mid + 1; else if (s[mid] > s_num) right = mid - 1; else return mid; } return -1; } int main() { int s[1000]; clock_t t_0; for (int i = 1; i < 1000; i++) s[i] = i; t_0 = clock(); int s_bit = Find(s, 200, 1000); cout << "s_bit = "<<s_bit << endl; t_0 = clock() - t_0; cout << t_0 << "毫秒" << endl; cin.get(); return 0; }
相关文章推荐
- JavaSE入门学习13:Java面向对象之封装
- mariadb connect引擎连接sqlserver
- span设为inline-block之后,未包含文字时下面会多出一条空白问题
- HDU 1863 - 畅通工程
- Guess Your Way Out! II---cf 558D (区间覆盖,c++STL map 的使用)
- MySQL执行状态分析
- 如何将word中所有的图片一次性保存
- 01背包的DFS解法
- ArcSDE用户介绍
- java线程池问题
- 3.6 常用查询的例子
- POJ 3414 (BFS)
- Educational Codeforces Round 6 C
- 关于chrome showModalDialog不兼容的解决办法
- struts2的struts.xml常量配置
- 01-linux指令学习记录
- android150 笔记
- android中获取坐标
- css学习笔记20160126定位
- 蓝桥杯--大小写转换(toupper,tolower使用)