响应式网站开发流程,网址转化短链接,微信官网网站模板下载不了,国外网站代理2019独角兽企业重金招聘Python工程师标准 分治法的基本思想#xff1a;将一个规模为n的问题#xff0c;分解为k个规模较小的子问题#xff0c;这些子问题互相独立且与原问题相同。递归的解这些子问题#xff0c;然后将各个子问题的解合并得到原问题的解。 经… 2019独角兽企业重金招聘Python工程师标准 分治法的基本思想将一个规模为n的问题分解为k个规模较小的子问题这些子问题互相独立且与原问题相同。递归的解这些子问题然后将各个子问题的解合并得到原问题的解。 经典例子二分搜索 算法基本思想 1 将n个元素分成个数大致相同的两半取n/2与x进行比较。 2 如果找到则终止返回。 3 如果小于n/2则在小半部分继续查找。 4 如果大于n/2则在大半部分继续查找。 算法描述代码 #include iostream
using namespace std;template class Type
int BinarySearch(Type a[],const Type x,int n){int left0;int right n-1;while(leftright){int middle (leftright)/2;if(x middle)return middle;if(x a[middle])left middle1;elseright middle-1;}return -1;
}
int main()
{int num[10] {0,9,8,7,6,5,4,3};int a;cout输入想要查找的数字:endl;cina;int find BinarySearch(num,a,9);if(find!-1)coutfindendl;elsecout找不到想要的结果endl;return 0;
} 运行结果如下 转载于:https://my.oschina.net/u/204616/blog/545016