二分查找

#include<iostream>
using namespace std;
void binary_find(int *a,int begin,int end,int v)
{
	int middle=(begin+end)/2;
	if(a[middle]==v)
	{
		cout<<middle<<endl;
		return;
	}
	else
		if(begin==end)
		{
			cout<<"NIL"<<endl;
			return;
		}
		if(a[middle]>v)
			binary_find(a,begin,middle,v);
		else
			binary_find(a,middle,end,v);
}

int main()
{
	int a[]={1,2,3,4,5,6,7};
	binary_find(a,0,7,5);
}

posted @ 2010-10-18 23:29  hailong  阅读(92)  评论(0编辑  收藏  举报