![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心算法
dijk
这个作者很懒,什么都没留下…
展开
-
算法设计与分析: 4-8 d森林问题
d森林问题问题描述设 T 是一棵带权树,树的每一条边带一个正权。又设 S 是 T 的顶点集,T/S 是从树 T 中 将 S 中顶点删去后得到的森林。如果 T/S 中所有树的从根到叶的路长都不超过 d ,则称 T/S 是一个 d 森林。 (1)设计一个算法求 T 的最小顶点集 S,使 T/S 是 d 森林。(提示:从叶向根移动) (2)分析算法的正确性和计算复杂性。 (3)设...原创 2018-07-16 10:38:22 · 6259 阅读 · 1 评论 -
算法设计与分析: 4-23 最优分解问题
4-23 最优分解问题问题描述设 n 是一个正整数。现在要求将 n 分解为若干个互不相同的自然数的和,且使这些自然 数的乘积最大。对于给定的正整数 n,编程计算最优分解方案。数据输入: 第 1 行是正整数 n。Javaimport java.util.Scanner;public class ZuiYouFenJie { private stat...原创 2018-07-17 14:58:57 · 1203 阅读 · 0 评论 -
算法设计与分析: 4-24 可重复最优分解问题
4-24 可重复最优分解问题问题描述设 n 是一个正整数。现在要求将 n 分解为若干个自然数的和,且使这些自然数的乘积最 大。对于给定的正整数 n,编程计算最优分解方案。数据输入: 第 1 行是正整数 n。Javaimport java.util.Scanner;public class KeChongFuZuiYouFenJie { priv...原创 2018-07-17 15:34:44 · 1014 阅读 · 0 评论 -
算法设计与分析: 4-25 可重复最优组合分解问题
4-25 可重复最优组合分解问题问题描述对于任意正整数 m,它的取 2 组合数定义为 (m2)=m(m−1)/2(m2)=m(m−1)/2\left(\begin{array}{} m \\ 2 \end{array}\right)=m(m-1)/2 设 n 是一个正整数,现在要求将 n 分解为若干个自然数的和,且使这些自然数的取 2 组合数的乘积最大。对于给定的正...原创 2018-07-17 15:57:09 · 757 阅读 · 0 评论 -
算法设计与分析: 4-26 旅行规划问题
4-26 旅行规划问题问题描述G 先生想独自驾驶汽车从城市 A 到城市 B。从城市 A 到城市 B 的距离为 d0d0d_0 公里。汽车油箱的容量为 c 公升。每公升汽油能行驶 e 公里。出发点每公升汽油的价格为 p 元。从城市 A 到城市 B 沿途有 n 个加油站。第 i 个加油站距出发点的距离为 didid_i,油价为每公升 pipip_i 元。如 何规划才能使旅行的费用最省。...原创 2018-07-17 19:26:06 · 1834 阅读 · 0 评论 -
算法设计与分析: 4-27 登山机器人问题
4-27 登山机器人问题问题描述登山机器人是一个极富挑战性的高技术密集型科学研究项目,它为研究发展多智能体系统和多机器人之间的合作与对抗提供了生动的研究模型。 登山机器人可以携带有限的能量。在登山过程中,登山机器人需要消耗一定能量,连续攀登的路程越长,其攀登的速度就越慢。在对 n 种不同类型的机器人作性能测试时,测定 出每个机器人连续攀登 1 米,2 米,…,k 米,所用的时间。现在要...原创 2018-07-18 07:39:46 · 1064 阅读 · 0 评论 -
算法设计与分析: 4-1 会场安排问题
4-1 会场安排问题问题描述假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。设计一个有效的贪心算法进行安排。(这个问题实际上是著名的图着色问题。若将每一个活动作为图的一个 顶点,不相容活动间用边相连。使相邻顶点着有不同颜色的最小着色数,相应于要找的最小 会场数。)对于给定的 k 个待安排的活动,编程计算使用最少会场的时间表。数据输入: 第一行有 1 个正整数 k...原创 2018-07-15 16:28:00 · 3401 阅读 · 0 评论 -
算法设计与分析: 4-2 最优合并问题
4-2 最优合并问题问题描述给定 k 个排好序的序列 s1,s2,...,sks1,s2,...,sks_1 , s_2 ,..., s_k , 用 2 路合并算法将这 k 个序列合并成一个序列。 假设所采用的 2 路合并算法合并 2 个长度分别为 m 和 n 的序列需要 m+n-1次比较。试设计一个算法确定合并这个序列的最优合并顺序,使所需的总比较次数最少。 为了进行比较,还需要...原创 2018-07-15 19:15:31 · 3746 阅读 · 0 评论 -
算法设计与分析: 4-3 磁带最优存储问题
4-3 磁带最优存储问题问题描述设有 n 个程序{1,2,...,n}{1,2,...,n}\{1,2,..., n\}要存放在长度为 L 的磁带上。程序 i 存放在磁带上的长度是 lilil_i ,1≤i≤n1≤i≤n1\leq i \leq n。这n个程序的读取概率分别是p1,p2,...,pnp1,p2,...,pnp_1,p_2,...,p_n,且∑i=1npi=1∑i=1np...原创 2018-07-15 21:12:04 · 3071 阅读 · 0 评论 -
算法设计与分析: 4-4 磁盘文件最优存储问题
4-4 磁盘文件最优存储问题问题描述设磁盘上有n 个文件 f1,f2,...,fnf1,f2,...,fnf_1, f_2 ,..., f_n ,每个文件占磁盘上 1 个磁道。这n 个文件的检索概 n率分别是 p1,p2,...,pnp1,p2,...,pnp_1 , p_2 ,..., p_n ,且∑i=1npi=1∑i=1npi=1\sum\limits_{i=1}^np_i=1。...原创 2018-07-15 22:09:33 · 4651 阅读 · 0 评论 -
算法设计与分析: 4-5 程序存储问题
4-5 程序存储问题问题描述设有 n 个程序{1,2,…, n }要存放在长度为 L 的磁带上。程序 i 存放在磁带上的长度是 lilil_i ,1≤i≤n1≤i≤n1\leq i\leq n。 程序存储问题要求确定这 n 个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序。对于给定的 n 个程序存放在磁带上的长度,编程计算磁带上最多可以存储的程序数。数据输入:...原创 2018-07-15 22:36:05 · 1285 阅读 · 0 评论 -
算法设计与分析: 4-6 最优服务次序问题
4-6 最优服务次序问题问题描述设有 n 个顾客同时等待一项服务。顾客 i 需要的服务时间为 titi t_i ,1≤i≤n1≤i≤n1\leq i\leq n。应如何安排 n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是 n 个顾客等待服务时间的总和除以 n。对于给定的 n 个顾客需要的服务时间,编程计算最优服务次序。数据输入: 第一行是正整数 n,表示有 ...原创 2018-07-15 22:55:08 · 1626 阅读 · 0 评论 -
算法设计与分析: 4-22 任务时间表问题
4-22 任务时间表问题问题描述一个单位时间任务是恰好需要一个单位时间完成的任务。给定一个单位时间任务的有限 集 S。关于 S 的一个时间表用于描述 S 中单位时间任务的执行次序。时间表中第 1 个任务从 时间 0 开始执行直至时间 1 结束,第 2 个任务从时间 1 开始执行至时间 2 结束,…,第 n 个任务从时间 n-1 开始执行直至时间 n 结束。 具有截止时间和误时惩罚的单...原创 2018-07-17 13:53:44 · 2028 阅读 · 1 评论 -
算法设计与分析: 4-21 区间相交问题
4-21 区间相交问题问题描述给定 x 轴上 n 个闭区间。去掉尽可能少的闭区间,使剩下的闭区间都不相交。给定 n 个闭区间,编程计算去掉的最少闭区间数。数据输入: 第一行是正整数 n,表示闭区间数。接下来的 n 行中,每行有 2 个整数,分别表示闭区间的 2 个端点。Javaimport java.util.*;public class QuJian...原创 2018-07-17 12:28:09 · 510 阅读 · 0 评论 -
算法设计与分析: 4-20 多元Huffman编码变形
4-20 多元Huffman编码变形问题描述在一个操场的四周摆放着 n 堆石子。现要将石子有次序地合并成一堆。规定在合并过程中最多可以有 m(k)次选 k 堆石子合并成新的一堆,2≤k≤n,合并的费用为新的一堆的石子数。试设计一个算法,计算出将 n 堆石子合并成一堆的最小总费用。对于给定 n 堆石子,编程计算合并成一堆的最小总费用。数据输入: 第 1 行有 1 个正整数 n,...原创 2018-07-17 11:02:26 · 724 阅读 · 0 评论 -
算法设计与分析: 4-9 汽车加油问题
4-9 汽车加油问题问题描述一辆汽车加满油后可行驶 n 公里。旅途中有若干个加油站。设计一个有效算法,指出应 在哪些加油站停靠加油,使沿途加油次数最少。并证明算法能产生一个最优解。对于给定的 n 和 k 个加油站位置,编程计算最少加油次数。第一行有 2 个正整数 n 和 k,表示汽车加满油后可行驶n 公里,且旅途中有 k 个加油站。接下来的 1 行中,有 k+1 个整数,表示第...原创 2018-07-16 11:46:55 · 1714 阅读 · 1 评论 -
算法设计与分析: 4-10 区间覆盖问题
4-10 区间覆盖问题问题描述设 x1,x2,...,xnx1,x2,...,xnx_1 , x_2 ,..., x_n 是实直线上的 n 个点。用固定长度的闭区间覆盖这 n 个点,至少需要多少个这样的固定长度闭区间?设计解此问题的有效算法,并证明算法的正确性。对于给定的实直线上的 n 个点和闭区间的长度 k,编程计算覆盖点集的最少区间数。数据输入: 第一行有 2 个正整数 ...原创 2018-07-16 12:17:26 · 1057 阅读 · 1 评论 -
算法设计与分析: 4-11 硬币找钱问题
4-11 硬币找钱问题问题描述设有 6 种不同面值的硬币,各硬币的面值分别为 5 分,1 角,2 角,5 角,1 元,2 元。 现要用这些面值的硬币来购物和找钱。购物时可以使用的各种面值的硬币个数存于数组 Coins[1:6]中,商店里各面值的硬币有足够多。在 1 次购物中希望使用最少硬币个数。 例如,1 次购物需要付款 0.55 元,没有 5 角的硬币,只好用 2*20+10+5 ...原创 2018-07-16 15:59:20 · 5489 阅读 · 0 评论 -
算法设计与分析: 4-12 删数问题
4-12 删数问题问题描述给定 n 位正整数 a,去掉其中任意 k≤n 个数字后,剩下的数字按原次序排列组成一个 新的正整数。对于给定的 n 位正整数 a 和正整数 k,设计一个算法找出剩下数字组成的新数 最小的删数方案。对于给定的正整数 a,编程计算删去 k 个数字后得到的最小数。数据输入: 第 1 行是 1 个正整数 a。第 2 行是正整数 k。Javai...原创 2018-07-16 16:31:20 · 992 阅读 · 0 评论 -
算法设计与分析: 4-13 数列极差问题
4-13 数列极差问题问题描述在黑板上写了 N 个正数组成的一个数列,进行如下操作:每一次擦去其中 2 个数设为 a 和 b,然后在数列中加入一个数 a*b+1,如此下去直至黑板上只剩下一个数。在所有按这种 操作方式最后得到的数中,最大的数记为 max,最小的数记为 min,则该数列的极差 M 定义 为 M = max - min。对于给定的数列,编程计算出其极差 M。数据输入...原创 2018-07-16 17:00:37 · 1238 阅读 · 0 评论 -
算法设计与分析: 4-14 嵌套箱问题
4-14 嵌套箱问题问题描述一个d维箱(x1,x2,...,xd)(x1,x2,...,xd)(x_1,x_2,...,x_d )嵌入另一个d维箱(y1,y2,...,yd)(y1,y2,...,yd)(y1,y2,...,yd )是指存在1,2,...,d1,2,...,d1,2,...,d的一个 排列πππ,使得xπ(1)<y1,xπ(2)<y2,...,xπ(d)&l...原创 2018-07-16 19:06:35 · 904 阅读 · 0 评论 -
算法设计与分析: 4-15 套汇问题
4-15 套汇问题问题描述套汇是指利用货币汇兑率的差异将一个单位的某种货币转换为大于一个单位的同种货 币。例如,假定 1 美元可以买 0.7 英镑,1 英镑可以买 9.5 法郎,且 1 法郎可以买到 0.16 美元。通过货币兑换,一个商人可以从 1 美元开始买入,得到 0.7×9.5×0.16=1.064 美元, 从而获得 6.4%的利润。给定 n 种货币c1,c2,...,cnc...原创 2018-07-16 19:52:18 · 2627 阅读 · 0 评论 -
算法设计与分析: 4-16 信号增强装置问题
4-16 信号增强装置问题问题描述各种资源传输网络的功能是将始发地的资源通过网络传输到一个或多个目的地。例如, 通过石油或者天然气输送管网可以将从油田开采的石油和天然气传送给消费者。 同样,通 过高压传输网络可以将发电厂生产的电力传送给用电消费者。为了使问题更具一般性,用术 语信号统称网络中传输的资源 (石油,天然气,电力等等)。各种资源传输网络统称为信号 传输网络。信号经信号传输网络...原创 2018-07-16 21:32:03 · 740 阅读 · 0 评论 -
算法设计与分析: 4-17 磁带最大利用率问题
4-17 磁带最大利用率问题问题描述设有 n 个程序1,2,...,n1,2,...,n{1,2,..., n }要存放在长度为 L 的磁带上。程序 i 存放在磁带上的长度是lili l_i ,1≤i≤n1≤i≤n1\leq i\leq n。 程序存储问题要求确定这 n 个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序。在保证存储最多程序的前提下还要求磁带的利用率达到...原创 2018-07-17 00:00:01 · 1593 阅读 · 1 评论 -
算法设计与分析: 4-18 非单位时间任务安排问题
4-18 非单位时间任务安排问题问题描述具有截止时间和误时惩罚的任务安排问题可描述如下。 (1) 给定 n 个任务的集合 S={1,2,...,n}S={1,2,...,n}S=\{1,2,...,n\}; (2) 完成任务i需要titit_i 时间,1≤i≤n1≤i≤n1\leq i\leq n; (3) 任务 i 的截止时间 didid_i ,1≤i≤n1≤i≤n1≤i≤n...原创 2018-07-17 09:19:14 · 3225 阅读 · 0 评论 -
算法设计与分析: 4-19 多元Huffman编码问题
4-19 多元Huffman编码问题问题描述在一个操场的四周摆放着 n 堆石子。现要将石子有次序地合并成一堆。规定每次至少选2 堆最多选 k 堆石子合并成新的一堆,合并的费用为新的一堆的石子数。试设计一个算法, 计算出将 n 堆石子合并成一堆的最大总费用和最小总费用。对于给定 n 堆石子,编程计算合并成一堆的最大总费用和最小总费用。数据输入: 第 1 行有 2 个正整数 n ...原创 2018-07-17 10:21:49 · 1895 阅读 · 0 评论 -
算法设计与分析: 4-7 多处最优服务次序问题
4-7 多处最优服务次序问题问题描述设有 n 个顾客同时等待一项服务。顾客 i 需要的服务时间为 titit_i ,1≤i≤n1≤i≤n1\leq i \leq n。共有 s 处可以提供此项服务。应如何安排 n 个顾客的服务次序才能使平均等待时间达到最小?平均等待时 间是 n 个顾客等待服务时间的总和除以 n。对于给定的 n 个顾客需要的服务时间和 s 的值,编程计算最优服务次...原创 2018-07-16 00:03:53 · 1728 阅读 · 0 评论