首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

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

2012-04-08 
新手能不能帮忙实现一个这个算法谢谢!!!!int BinarySearch(Type a[],const Type&x, int n){int left 0i

新手 能不能帮忙实现一个这个算法 谢谢!!!!
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);

}

热点排行