常用算法- 二分查找
来源:互联网 发布:英语口语句型 知乎 编辑:程序博客网 时间:2024/04/30 14:35
对分查找
问题描叙:
对分查找:
给定一个整数x和整数A0,A1,…An-1,后者已经预先排序并在内存中,求使得
Ai=X的下标i,如果X不在数据中,则返回i = -1:
#include <iostream>
using namespace std;
template <class T>
int BinarySertch(T a[], int n, T x)
{
int begin, end, mid;
begin = 0; end = n - 1;
while(begin <= end)
{
mid = (begin + end) / 2;
if(x > a[mid])
begin =mid + 1;
else if(x < a[mid])
end = mid - 1;
else
return mid;
}
return -1;
}
int main()
{
int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
int n = sizeof(a)/ sizeof(int);
int result = BinarySertch<int>(a, n, 2);
cout << "the index of 2 is: " << result << endl;
system("pause");
return 0;
}
- 常用算法- 二分查找
- 常用算法整理:二分查找
- 常用算法之二分查找
- 常用算法整理:二分查找
- 【算法】常用的查找算法之二分查找法
- 查找算法 二分查找
- 查找算法:二分查找
- 算法--查找--二分查找
- 查找算法---二分查找
- 常用算法回顾——二分查找算法
- [算法]二分查找算法
- 算法----二分查找算法
- 查找算法:二分查找算法
- 常用算法——二分查找(Binary Search)
- 常用二分查找模板
- [转载]查找算法----二分查找
- 查找算法之二分查找
- 查找算法之二分查找
- GRIDVIEW 用法 [转载]
- log4j配置入门 -- log4j 配置模版
- RS232接口转USB接口的通信方法
- 常用算法-子序列求和
- 平时在做ASP.NET项目里经常使用的一些函数和方法
- 常用算法- 二分查找
- 串口通信基本接线方法
- Iterator用法例子
- 串行通信波特率的一种自动检测方法
- APS.NET上传图使之缩小
- 简单算法--欧几里德算法
- Acoustica Collection 2006-2007
- Cookie和Session专题
- CRC算法与实现