当前位置:首页 >> 学科竞赛 >> 分治

分治


例:求n(n是2的幂(n>=2))个元素中的最大元与最小元。

[分析]用分治法解决这个问题就是把集合a分成a1,a2两个子集,每个子集有n/2个元素,应用递归结构找出两个子集的最大元和最小元,比较得到的两个最大元和最小元即可得到整个集合a中的最大元和最小元。

[参考程序]
program fenzhi;
const n=10;
type atype=array[1..n]of integer;
var max,min,I:integer;
a:atype;
procedure maxmin(r1,r2:integer;var max,min:integer);
var d,max1,min1,max2,min2:integer;
begin
if r2=r1+1 then
begin
if a[r2]>a[r1] then begin
max:=a[r2];
min:=a[r1];
end
else begin
min:=a[r2];
max:=a[r1];
end
end
else
begin
d:=(r1+r2)div 2;
maxmin(r1,d,max1,min1);
maxmin(d,r2,max2,min2);
if max1>max2 then max:=max1 else max:=max2;
if min1>min2 then min:=min2 else min:=min1;
end;
begin
writeln(‘input a:’);
for I:=1 to n do read(a[i]);
maxmin(1,n,max,min);
writeln(‘the max number is:’,max,’min number is:’,min);
end.

赞助商链接
更多相关文档:

分治算法实验报告

《算法设计与分析》实验报告 实验 1 分治算法 姓名张成辉 学号 1307300123 班级计科 132 实验日期 2015.1.13 实验地点学院 302 一、实验目的 1、掌握分治算法的...

分治算法设计技术___。 A.一般由三个步骤组成:问题划分...

分治方法是一种重要的算法设计技术(设计策略),该策略将原问题划分成n个规模较小而结构与原问题相似的子问题;递归地解决这些子问题;然后再合并其结果,最终得到原问...

分治算法实验报告

算法分析与设计实验报告 第 1 次实验姓名 时间 实验名称 10.17 上午 学号 地点 四合院 102 班级 分治算法实验(用分治法查找数组元素的最大值和最小值) 。 ...

分治算法试题

分治算法试题_理学_高等教育_教育专区。分治算法当我们求解某些问题时,由于这些问题要处理的数据相当多,或求解过程相当复杂,使得直接求解法 在时间上相当长,或者根本...

蛮力法和分治法的性能比较

蛮力法与分治法求解最近对问题 1、蛮力法 蛮力法是一种简单直接地解决问题的方法,常常直接基于问题的描述和所涉及的概念 定义,来求解问题。虽然巧妙和高效的算法...

作业3 分治法

作业3 分治法_财会/金融考试_资格考试/认证_教育专区。2012 级算法设计与分析分治法 1. 作业题 作业 3 (1) 求 n 个元素的数组中最大元素的位置。 请用分治...

分治法解最接近点对问题

算法分析与设计实验报告 2014-2015 第一学期 实验一:用分治法解最接近点对问题 指导教师:cccc 实验时间:2014 年 10 月 28 日 实验地点:计算中心二楼 班级: ...

分治法求最大最小值

一. 实验目的及实验环境 实验目的:加深对分治算法原理及实现过程的理解。 实验环境:VC++6.0 二. 实验内容 用分治法求数组中最大元素和最小元素。 三.方案设计...

分治法

分治法_数学_自然科学_专业资料。分治法【摘要】 :分治法可以通俗的解释为:把一片领土分解,分解为若干块小部分,然后一块块地占领征服,被 分解的可以是不同的政...

算法分析——分治法

算法分析——分治法_IT/计算机_专业资料。分治算法小组的汇报内容: 小组的汇报内容:一、分治算法的基本概念………第 2 页 分治算法的基本概念………第 基本概念...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com