c_cpp 【分治法】二分搜索技术【2.3】
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 【分治法】二分搜索技术【2.3】相关的知识,希望对你有一定的参考价值。
//2d3 二分搜索技术
#include "stdafx.h"
#include <iostream>
using namespace std;
template<class Type>
int BinarySearch(Type a[],const Type& x,int n);
int main()
{
int x = 6;
int a[10];
for(int i=0; i<10; i++)
{
a[i] = i + 1;
}
cout<<BinarySearch(a,x,10)<<endl;
return 0;
}
template<class Type>
int BinarySearch(Type a[],const Type& x,int n)
{
int left = 0;
int right = n-1;
while(left<=right)
{
int mid = (left + right)/2;
if(x == a[mid])
{
return mid;
}
if(x>a[mid])
{
left = mid + 1;
}
else
{
right = mid - 1;
}
}
return -1;
}
以上是关于c_cpp 【分治法】二分搜索技术【2.3】的主要内容,如果未能解决你的问题,请参考以下文章
二分搜索法
算法第二章上机实践报告
c_cpp 【分治法】快速排序【2.8】
算法复习_分治算法之二分搜索棋盘覆盖快速排序
计算机算法设计与分析之递归与分治策略——二分搜索技术
2_3 递归与分治策略(二分搜索技术)