您好、欢迎来到现金彩票网!
当前位置:PC蛋蛋 > 最优归并树 >

算法分析作业--第5章_图文

发布时间:2019-06-10 18:23 来源:未知 编辑:admin

  ? (0/1背包问题)如果将5.3节讨论的背包问 题修改成 n pi xi ? 极大化 1 ?w x ? M 约束条件 xi=0或1 1≤i≤n ? 这种背包问题称为0/1背包问题。它要求物 品或者整件装入背包或者整件不装入。求 解此问题的一种贪心策略是:按pi/wi的非增 次序考虑这些物品,只要正被考虑的物品 能装的进就将其装入背包。证明这种策略 不一定能得到最优解。

  ? 证明: – 按照pi/wi的非增次序考虑物品放入背包,如 果从大到小连续放入且能装满背包时,显然 为最优解。 – 否则未必是最优解.

  ? 假定要将长为l1,l2,…,ln的n个程序存入一盘 磁带,程序i被检索的频率是fi。如果程序按 i1,i2,…,in的次序存放,则期望检索时间 (ERT)是:

  ? ① 证明按li的非降次序存放程序不一定得到 最小的ERT。 ? ② 证明按fi的非增次序存放程序不一定得到 最小的ERT。 ? ③ 证明按fi/li的非增次序来存放程序时ERT 取最小值。

  ? 最优解中所有这样类似于反序对的程序互换位 置,每次得到的解不比原来的最优解差,所以 最终变换后得到的解也是最优解,而最终的解 恰是程序按fi/li的非增次序来存放得到的顺序。 ? 命题得证。

  ? 假定要将长为l1,l2,…,ln的n个程序分别写入两盘磁 带T1和T2上,并且希望按照使最大检索时间取最 小值的方式存放。即,如果存放在T1和T2上的程 序集合分别是A和B,就希望所选择的A和B使得 li , ? li }取最小值。一种得到A和B的贪 max{ ? i?A i?B 心方法如下:开始将A和B都初始化为空,然后一 li = min { ? li , ? li }, 次考虑一个程序,如果 ? i?A i?A i?B 则将当前正在考虑的那个程序分配给A,否则分 配给B。证明无论按l1 ≤ l2 ≤ … ≤ ln 或是按l1 ≥ l2 ≥ … ≥ ln 的次序来考虑程序,这种方法都不能产 生最优解 。

  ? ② 证明即使作业有不同的处理时间定理5.3 亦真。这里,规定作业i的效益pi0,要用 的处理时间ti0,限期di≥ti.(P106)

  ? 定理5.3:设J是K个作业的集合, ? =i1i2…ik是 J中作业的一种排序,它使得di1≤di2≤…≤dik .J 是一个可行解,当且仅当J中的作业可以按照 ?的次序又不违反任何一个期限的情况下来 处理.

  ? 作业ra和rb仍然可以完成任务 ? 作业ra和rb之间的作业也能够完成任务

  证明:显然即使ti0(di≥ti),如果J中的作业可以 按照?的次序而又不违反任何一个期限来处理,

  t j 即对?次序中的任一个作业k,应满足dk ≥ ? j ?1 ,则J就是一个可行解。 下面证明如果J是可行解,? =i1i2…ik使得J中的作业 可以按照di1≤di2≤…≤din 序列排列而又不违反任何 一个期限。

  ? 我们还要证明ra和rb之间的作业也能按期完成。因 为drb≤dra,而显然二者之间的所有作业rt,都有 drb≤drt,又由于?’是可行解,所以 ,所以作业ra k tr j 和rb交换后,仍满足 drt ≥ ? , j ?1 即所有作业可依新产生的排列?’’=s1s2…sn的次 序处理而不违反任何一个期限 ? 连续使用这种方法,?’就可转换成?且不违反任何 一个期限,定理得证。

  ? ① 对于5.3节的作业排序问题证明:当且仅 当子集合J中的作业可以按下述规则处理时 它表示一个可行解;如果J中的作业I还没分 配处理时间,则将它分配在时间片[a-1,a] 处理,其中a是使得1≤r≤di的最大整数r,且 时间片[a-1,a]是空的。 ? ② 仿照例5.4的格式,在习题8①所提供的 数据集上执行算法5.5。

  ? 易证如果J中的作业能按上述规则处理,显然J是 可行解; ? 如果J是可行解,根据定理5.3可知,J中的作业根 据时间期限的非降次序排列,得到i1i2…ik …in , 并且按照这个顺序,可以处理J中所有作业,而对 这一序列中的任意作业ik,如果它的时间期限是dk, 且时间片[dk-1,dk]是空的,则分配之;若时间片 [dk-1,dk]非空,则向前找最大的非空[r-1,r]时间片, 1≤r≤dk。因为J是可行解,所以一定可以找到如此 时间片。故命题得证。

  ? ① 证明如果一棵树的所有内部节点的度都 为k,则外部节点数n满足n mod (k-1)=1. ? ② 证明对于满足 n mod (k-1)=1的正整数n, 存在一棵具有n个外部节点的k元树T(在一 棵k元树中,每个节点的度至多为k)。进而 证明T中所有内部节点的度为k.

  正整数n,存在一棵具有n个外部节点的k元树 T(在一棵k元树中,每个节点的度至多为k)。进 而证明T中所有内部节点的度为k.

  ? ② 利用数学归纳法(m表示外部结点数目)。 ? 当m =k时,存在外部结点数目为k的k元树T, 并且T中内部结点的度为k;

  ? 假设当 m n,且满足m mod (k-1)=1时, 存在一棵具有m个外部结点的k元树T,且所 有内部结点的度为k; ? 我们将外部结点数为m的符合上述性质的树 T中某个外部结点用内部结点 a替代,且结 点a生出k个外部结点.

  ? 易知新生成的树T’中外部结点的数目为n= m -1+k= m +(k-1),因为 m mod (k-1)=1, 所以n为满足n mod (k-1)=1,且比m大的最 小整数,而树T’每个内结点的度为k,所以 n= m +(k-1)时,存在符合上述性质的树。 故命题得证。

  ? ① 证明如果n mod (k-1)=1,则在定理5.4后 面所描述的贪心规则对于所有的 (q1,q2,…,qn)生成一棵最优的k元归并树。

  理3.6后面所描述的贪心规则对于所有的 (q1,q2,…,qn)生成一棵最优的k元归并树。 ? 通过数学归纳法证明: ? 对于n=1,返回一棵没有内部结点的树且这棵 树显然是最优的。 ? 假定该算法对于(q1,q2,…,qm),其中m=(k1)s+1 (s≥0),都生成一棵最优树, ? 则只需证明对于(q1,q2,…,qn),其中n=(k1)(s+1)+1,也能生成最优树即可。

  ? 不失一般性,假定q1≤q2≤…≤qn,且 q1,q2,…,qk是算法所找到的k棵树的WEIGHT 信息段的值。于是q1,q2,…,qk可生成子树T, 设T’是一棵对于(q1,q2,…,qn)的最优k元归 并树。设P是距离根最远的一个内部结点。 如果P的k个儿子不是q1,q2,…,qk,则可以用 q1,q2,…,qk和P现在的儿子进行交换,这样不 增加T’的加权外部路径长度。

  ? 因此T也是一棵最优归并树中的子树。于是 在T’中如果用其权为q1+q2+…+qk的一个外部 结点来代换T,则所生成的树T’’是关于 (T,qk+1,…,qn)的一棵最优归并树。由归纳假 设,在使用其权为q1+q2+…+qk的那个外部结 点代换了T以后,过程TREE转化成去求取一 棵关于(T,qk+1,…,qn)的最优归并树。因此 TREE生成一棵关于(q1,q2,…,qn)的最优归并 树。

http://cairowatch.com/zuiyouguibingshu/9.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有