二分搜索算法的实现

//二分搜索算法的分治策略 
//迭代
#include
using namespace std;

int a[100];
int x;

int BinarySearch(int a[],int x,int n)
{//找到x时返回其在数组的位置,否则返回-1 
	int left=0,right=n-1;
	while(left<=right)
	{
		int middle=(left+right)/2;
		if(x==a[middle])
			return middle;
		if(x>n;//n个数 
	for(int i=0;i>a[i];	
	}
	cin>>x;//要找的数 
	cout<
using namespace std;

int a[100];

int BinarySearch(int a[],int x,int left,int right)
{//递归
	 if(left<=right)
	 {
	 	int middle=(left+right)/2;
	 	if(x==a[middle])
	 		return middle; 
	 	if(x>n;
	for(int i=0;i>a[i];
	}
	cin>>x;
	cout<
using namespace std;

int a[100],b[100];
int count=0;

int BinarySearch(int a[],int b,int n)
{
	int left=0,right=n-1;
	while(left<=right)
	{
		int middle=(left+right)/2;
		if(middle==b) 
			return 1;
		if(b>n;
	for(int i=0;i>a[i];
	}
	cin>>q;
	for(int j=0;j>b[j];
	}
	for(int k=0;k

你可能感兴趣的:(算法设计与分析)