读书人

新手 能不能帮忙实现一个这个算法 多

发布时间: 2012-04-08 14:38:30 作者: rapoo

新手 能不能帮忙实现一个这个算法 谢谢!!!!
int BinarySearch(Type a[],const Type&x, int n)
{
int left = 0;int right = n-1;
while (left <= right)
{
int middle = (left + right)/2;
if(x == a[middle]) return middle;
if(x > a[middle]) left = middle + 1;
else right = middle - 1;
}
return -1;
}

[解决办法]
二分查找的函数模板
<class T>
int BinarySearch(。。。)
{
}
加上<class T>就行了。或者是<template T>
[解决办法]
楼主 搜索一下 三分钟就有结果 何必 ~ ~

自己动手 丰衣足食

到程序有什么问题和不理解的再来问人
[解决办法]
[code=C/C++][/code]
#include "stdafx.h"
#include<iostream>
using namespace std;
template <class Type>

int BinarySearch(Type a[],const Type&x, int n)
{
int left = 0;int right = n-1;
while (left <= right)
{
int middle = (left + right)/2;
if(x == a[middle]) return middle;
if(x > a[middle]) left = middle + 1;
else right = middle - 1;
}
return -1;
}
int main()
{
int a[9]={1,2,3,4,5,6,7,8,9};
cout<<BinarySearch(&a[0],5,9);

}

读书人网 >C++

热点推荐