NOIP基础算法——分治与贪心
第五部分
分治策略
一、分治思想
分治法,又叫分治策略,顾名思义,分而治之。
它的基本思想:对于难以直接解决的规模较大的问题,把它分解成若干个能直接解决的相互独立的子问题,递归求出各子问题的解,再合并子问题的解,得到原问题的解。
通过减少问题的规模,逐步求解,能够明显降低解决问题的复杂度。
二、分治法的适用条件
能使用分治法解决的问题,它们一般具备以下几个特征:
①该问题可分解成若干相互独立、规模较小的相同子问题;
②子问题缩小到一定的程度就能轻易得到解;
③子问题的解合并后,能得到原问题的解;
分治法在信息学竞赛中应用非常广泛,使用分治策略能生成一些常用的算法和数据结构,如快排、最优二叉树、线段树等;还可以直接使用分治策略,解决一些规模很大、无法直接下手的问题。
三、分治的三步骤
①分解:将要解决的问题分解成若干个规模较小的同类子问题;
②解决:当子问题划分得足够小时,求解出子问题的解。
③合并:将子问题的解逐层合并成原问题的解。
分治算法设计过程图
在划分问题时,可以采用递归策略,把一个大问题逐步分解成规模较小的子问题,直至可以直接求出子问题的解;再将子问题逐层合并,返回到顶层,得到原问题的解。
根据分治策略的划分原则,把原问题划分成多少个子问题才合适呢?各个子问题的规模应该多大才合适呢?
一般来说,每次划分成2个子问题,每个子问题的规模差不多最合适。合并解时要因题而异,有些问题递归分解完能直接得到原问题的解,有些问题需逐层合并,得到原问题的解。
四、分治的框架结构
procedure Divide()
begin
if(问题不可分)then//解决
begin
直接求解;
返回问题的解;
end
else begin
对原问题进行分治;//分解
递归对每一个分治的部分进行求解; //解决
归并整个问题,得出全问题的解; //合并
end
end;
五、分治的典型应用
1、求最大值和最小值
2、求方程的根
3、二分查找
4、归并排序
5、快速幂
6、求解线性递推关系
7、棋盘覆盖问题
8、循环日程表问题
9、寻找最近点对
1、求最大值和最小值
例题1:给n个数,求它们之中最大值和最小值,要求比较次数尽量小。
分析:假设数据个数为n,存放在数组a[1..n]中。可以直接进行比较:
minn:=a[1];maxx:=a[1];
for i:=2 to n do
if a[i]maxx then maxx:=a[i];
else if a[i]minn then minn:=a[i];
使用这一算法,比较次数为2(n-1)。若n=10,则比较18次。
【方法2】分治策略
划分:把n个数均分为两半。即:划分点为d=(r1+r2)/2,两个区间为[r1,d]和[d+1,r2]。
递归求解:求左半的最小值min1 和最大值max1以及右半最小值min2和最大值max2。
合并:max1与max2比较得到所有数的最大值为maxx; min1与min2比较得到所有数的最小值为minn。
procedure pd(r1,r2:integer;var maxx,minn:integer)
begin
var max1,min1,max2,min2,d:integer;
if r1=r2 then begin maxx:=x[r1]; minn:=x[r1];end
else if r2=r1+1 then
begin
if x[r2]x[r1] then begin maxx:=x[r2];minn:=x[r1];end
else begin maxx:=x[r1];minn:=x[r2];end
end
else begin
d:=(r1+r2)/2;
pd(r1,d,max1,min1);
您可能关注的文档
- 2015-2016高中生物专题61植物芳香油的提取新人教版选修1讲稿.ppt
- CTCS2列控系统讲稿.ppt
- 2015-2016高中生物专题62胡萝卜素的提取新人教版选修1讲稿.ppt
- 2015-2016高中物理第16章第1节实验:探究碰撞中的不变量新人教版选修3-5讲稿.ppt
- 建筑CAD07试卷.ppt
- 2015-2016高中政治第四单元第十课文化建设的中心环节第二框思想道德修养与科学文化修养讲稿.ppt
- 2015-2016九年级数学上册22.2二次函数与一元二次方程1(新版)新人教版讲稿.ppt
- 2015-2016九年级数学上册22.3实际问题与二次函数(第3课时)2(新版)新人教版讲稿.ppt
- 建筑安装-采暖施工识图全教程试卷.ppt
- C国庆复习讲稿.ppt
最近下载
- (2026年)实施指南《GBT13265.1-1997纤维光学隔离器第1部分总规范》.pptx VIP
- 2026-2030中国沉香木行业市场深度调研及发展趋势与投资前景研究报告.docx
- 东北证券-博源化工-000683-稀缺天然碱领军企业阿碱项目稳步扩产.pdf VIP
- JB_T 8531-2013阀门手动装置 技术条件.pdf
- 武术套路单项比赛所需物品明细单.docx VIP
- 部编版小学语文教师:统编版语文1-6年级语文要素梳理.pdf VIP
- 2026年江苏城市职业学院单招职业技能考试必刷测试卷附答案.docx VIP
- 船上见习记录簿(样式).pdf
- (2026春新版)三年级下册道德与法治全册教案.docx
- (2025年)广东省公务员招录面试真题及答案.docx
原创力文档

文档评论(0)