- 4
- 0
- 约4.84千字
- 约 5页
- 2017-02-12 发布于北京
- 举报
算法设计与分析分治算法本基思想
算法基本思想
程序4-1-1折半搜索
templateclass T
int BinarySearch(T a[], const T x, int n)
{//在数组a[0:n-1]中搜索x,数组中的元素满足a[0]=a[1]= … =a[n-1]。
//如果找到x,则返回所在位置(数组元素的下标),否则返回 –1
int left=0; int right=n-1;
while(left=right){
int middle=(left+right)/2;
if(x==a[middle]) return middle;
if(xa[middle]) left=middle+1;
else right=middle – 1;
}
return –1; //未找到x
}
while 的每次循环(最后一次除外)都将以减半的比例缩小搜索范围,所以,该循环在最坏的情况下需要执行次。由于每次循环需耗时,因此在最坏情况下,总的时间复杂性为。
折半搜索算法贯彻一个思想,即分治法。当人们要解决一个输入规模,比如n,很大的问题时,往往会想到将该问题分解。比如将这n个输入分成k个不同的子集。如果能得到k个不同的可独立求解的子问题,而且在求出这些子问题的解之后,还可以找到适当的方法把它们的解合并成整个问题的解,那么复杂的难以解决的
您可能关注的文档
- 等级考试笔试拟模题答案2.doc
- 辽宁状元休学复读当续初父母劝一夜勉强去港大.doc
- 等腰三角形的性质与判定习复一.docx
- 答案2010-环境保护可与持续发展结课考题.doc
- 答《CNKI系列数据库产品标准》有关问题.doc
- 苏教版二年级语文上册作设业计.doc
- 辽宁省专业技术资格定评表.doc
- 苏教版二年级语文上册课内文容填空.doc
- 辽宁省专升本录取最低分统计.doc
- 苏教版二年级语文上册期末复习分类练习1.doc
- 2026年山东省滨州市惠民县中考化学一模试卷(含答案).pdf
- 2026年山东省济南市历城区中考化学二模试卷(含答案).pdf
- 2026年山东省烟台市福山区中考化学模拟试卷(含答案).pdf
- 2026年山东省临沂市郯城县中考化学一模(含答案).pdf
- 2026年四川省德阳市中江县中考化学二诊试卷(含答案).pdf
- 2026年四川省绵阳市梓潼县中考化学二模试卷(含答案).pdf
- 2026年新疆乌鲁木齐市沙依巴克区中考化学适应性试卷(含答案).pdf
- 2026年重庆市永川区中考化学质检试卷(含答案).pdf
- 2026年重庆市第一中学校中考化学全真模拟试卷(二)(含答案).pdf
- 安徽池州市第二中学等校2025-2026学年高一下学期期中物理试卷A(含答案).pdf
原创力文档

文档评论(0)