
分治递归
文章平均质量分 64
dijk
这个作者很懒,什么都没留下…
展开
-
算法设计与分析: 2-14 整数因子分解问题
2-14 整数因子分解问题问题描述大于1的正整数n可以分解为:n=x1∗x2∗…∗xmn=x1∗x2∗…∗xmn = x_1*x_2*…*x_m。例如,当n=12 时,共有8 种不同的分解式: 12=12; 12=6*2; 12=4*3; 12=3*4; 12=3*2*2; 12=2*6; 12=2*3*2; 12=2*2*3。 对于给定的正整数n...原创 2018-07-10 19:12:02 · 1839 阅读 · 0 评论 -
算法设计与分析: 2-1 输油管道问题
2-1 输油管道问题问题描述某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置?编程任务: 给定n 口油井的位置,编程计算各油井到主管道...原创 2018-07-07 09:25:14 · 2449 阅读 · 0 评论 -
算法设计与分析: 2-2 众数问题
2-2 众数问题问题描述给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。对于给定的n个自然数组成的多重集S,计算S的众数及其重数 。数组实现Javaimport java.util.Arrays;public class Main {...原创 2018-07-07 15:48:27 · 3937 阅读 · 0 评论 -
算法设计与分析: 2-3 邮局选址问题
2-3 邮局选址问题问题描述在一个按照东西和南北方向划分成规整街区的城市里,n个居民点散乱地分布在不同的街区中。用x 坐标表示东西向,用y坐标表示南北向。各居民点的位置可以由坐标(x,y)表示。街区中任意2 点(x1,y1)和(x2,y2)之间的距离可以用数值|x1-x2|+|y1-y2|度量。 居民们希望在城市中选择建立邮局的最佳位置,使n个居民点到邮局的距离总和最小。编程任务...原创 2018-07-07 16:38:19 · 5196 阅读 · 0 评论 -
算法设计与分析: 2-4 马的Hamilton周游路线问题
2-4 马的Hamilton周游路线问题问题描述8*8的国际象棋棋盘上的一只马,恰好走过除起点外的其他63个位置各一次,最后回到起点,这条路线称为马的一条Hamilton周游路线。对于给定的m*n的国际象棋棋盘,m和n均为大于5的偶数,且|m-n|≤2,试设计一个分治算法找出马的一条Hamilton周游路线。回溯法Javapublic class Main { ...原创 2018-07-08 15:13:52 · 3817 阅读 · 0 评论 -
算法设计与分析: 2-5 半数集问题
2-5 半数集问题问题描述给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下: (1)set(n)中包含n; (2)在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半; (3)按此规则进行处理,直至不能添加自然数为止。 例如,set(6)={6,16,26,126,36,136}。 注意:该半数集是多重集。...原创 2018-07-08 18:16:14 · 1356 阅读 · 0 评论 -
算法设计与分析: 2-6 半数单集问题
2-6 半数单集问题问题描述给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下: (1)set(n)中包含n; (2)在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半; (3)按此规则进行处理,直至不能添加自然数为止。 例如,set(6)={6,16,26,126,36,136}。 注意:该半数集不是多重集。集合中已经有的元素不再添加到...原创 2018-07-08 19:53:27 · 1013 阅读 · 2 评论 -
算法设计与分析: 2-7 士兵站队问题
2-7 士兵站队问题问题描述在一个划分成网格的操场上,n个士兵散乱地站在网格点上。网格点由整数坐标(x,y)表示。士兵们可以沿网格边上、下、左、右移动一步,但在同一时刻任一网格点上只能有一名士兵。按照军官的命令,士兵们要整齐地列成一个水平队列,即排列(x,y),(x+1,y),…,(x+n-1,y)。如何选择x 和y的值才能使士兵们以最少的总移动步数排成一列。 编程计算使所有士兵排成一...原创 2018-07-08 21:14:29 · 2579 阅读 · 0 评论 -
算法设计与分析: 2-8 有重复元素的排列问题
2-8 有重复元素的排列问题问题描述设R=r1,r2,…,rnR=r1,r2,…,rnR={ r_1, r_2 , …, r_n}是要进行排列的n个元素。其中元素r1,r2,…,rnr1,r2,…,rnr_1, r_2 , …, r_n可能相同。试设计一个算法,列出R的所有不同排列。编程任务 给定n 以及待排列的n 个元素。计算出这n 个元素的所有不同排列。分治法Ja...原创 2018-07-09 13:11:42 · 3074 阅读 · 0 评论 -
算法设计与分析: 2-9 排列的字典序问题
2-9 排列的字典序问题问题描述n个元素{1,2,…,n}有n!个不同的排列。将这n!个排列按字典序排列并编号为0,1,…,n!-1。每个排列的编号为其字典序值。例如,当n=3时,6个不同排列的字典序值如下: 字典序值 0 1 2 3 4 5 排列 123 132 213 ...原创 2018-07-09 19:35:31 · 2043 阅读 · 1 评论 -
算法设计与分析: 2-10 集合划分问题(Bell数)
2-10 集合划分问题(Bell数)问题描述n个元素的集合{1,2,…,n}可以划分若干个非空子集。例如,当n=4时,集合{1,2,3,4}可以划分为15个不同的非空子集如下: {{1},{2},{3},{4}}, {{1,2},{3},{4}}, {{1,3},{2},{4}}, {{1,4},{2},{3}}, {{2,3},{1},{4}}, {{2,4},{1},{...原创 2018-07-09 22:41:15 · 2656 阅读 · 2 评论 -
算法设计与分析: 2-11 集合划分问题(第2类Stirling数)
2-11 集合划分问题(第2类Stirling数)问题描述n个元素的集合{1,2,.,n }可以划分为若干个非空子集。例如,当n=4 时,集合{1,2,3,4}可以划分为15个不同的非空子集如下: {1},{2},{3},{4}}, {{1,2},{3},{4}}, {{1,3},{2},{4}}, {{1,4},{2},{3}}, {{2,3},{1},{4}}, {{2...原创 2018-07-09 23:39:48 · 1266 阅读 · 0 评论 -
算法设计与分析: 2-12 双色Hanoi塔问题
2-12 双色Hanoi塔问题问题描述设A、B、C是3 个塔座。开始时,在塔座A 上有一叠共n 个圆盘,这些圆盘自下而上,由大到小地叠在一起。各圆盘从小到大编号为1,2,……,n,奇数号圆盘着蓝色,偶数号圆盘着红色,如图所示。现要求将塔座A 上的这一叠圆盘移到塔座B 上,并仍按同样顺序叠置。在移动圆盘时应遵守以下移动规则: 规则(1):每次只能移动1 个圆盘; 规则(2):任何时刻...原创 2018-07-10 01:16:37 · 1682 阅读 · 0 评论 -
算法设计与分析: 2-13 标准二维表问题
2-13 标准二维表问题问题描述设n是一个正整数。2*n的标准二维表是由正整数1,2,…,2n组成的2*n数组,该数组的每行从左到右递增,每列从上到下递增。2*n的标准二维表全体记为Tab(n)。例如,当n=3时,tab(3)二维表如下图所示。 1 2 3 4 5 ...原创 2018-07-10 15:03:09 · 3012 阅读 · 0 评论 -
算法设计与分析: 3-24 有向直线2中值问题
3-24 有向直线2中值问题问题描述给定一条有向直线L以及L上的n+1个点x0<x1<...<xnx0<x1<...<xnx_0 < x_1 xixix_i都有一个权w(xi)w(xi)w(x_i );每条有向边(xi,xi−1)(xi,xi−1)(x_i ,x_{i-1})也都有一个非负边长d(xi,xi−1)d(xi,xi−1)d(x_i,x_{...原创 2018-07-14 20:36:57 · 3089 阅读 · 1 评论