北大 算法分析与设计 ss-solution3

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

作业三讲评2012.12.4

1

45

4.5 基站选址

使用贪心法

. 令a1, a2, … 表示基站的位置.

首先令a

1=d1+4. 对d2,d3,…, 依次检查,如果d k≤a1+4但是那么第基站没被覆盖于是取+4

a k+1>a1+4,那么第k+1基站没被覆盖,于是取a2=d k+1+4.

接着对d

k+2,d k+3,…依次检查,如果d j≤a2+4但是a j+1>a2+4,

基站没被覆盖取+4

那么第j+1基站没被覆盖,取a

3

=d j+1+4 ….

照此下去,直到检查完d

n

为止.

算法的伪码略.

算法的时间复杂度是O(n).

0 d1 d2 d3 d4 d5 d6

4km4km4km

a1a2

基站选址(续)

:存在最优解包含算法前

命题: 对任何正整数k,存在最优解包含算法前k步选择的基站. 证k=1, 存在最优解包含a[1]. 若不然,有最优解b, b[1]

得到仍旧是最优解

用a[1]替换b[1],得到仍旧是最优解.

假设对于k,存在最优解A包含算法前k步选择的基站位置,

{[1][2]

A={a[1],a[2],…,a[k]}∪B,

其中a[1],a[2],…,a[k]覆盖了距离d

1,d2,…,d j的房子. 那么,B是

=*

L{d j+1,d j+2,…,d n}的最优解,否则若有关于L的更优解B,用B*替换B就得到A*,且|A*|<|A|,与A的最优性矛盾. 根据归纳基础,存在L的最优解B’={a[k+1],…,},|B’| = |B|. 于是A’={a[1],a[2],…,a[k]}∪B’ ={a[1],a[2],…,a[k],a[k+1],…}

也是最优解. 命题对k+1也为真.

根据归纳法命题对任何k成立.

3

464.6

最小等待时间按加工时间从小到大对作业排序使得)12按加工时间从小到大对作业排序,使得t (i ) ≤t (i +1),i = 1, 2, … , n −1. 按照标号从小到大的次序安排所有的作业. 时间为O (n log n ).

证明

. OPT =(i , i , …,i ,若存在逆序i , i i k . 交换i j 与i k ,得到解OPT 1. 那么总的等待时间之差是因此0))(()()(1≤−−=−j k t t OPT Time OPT Time j k i i OPT 1也是最优解.

至多n (n −1)/2次交换,去除所有的逆序,就可以使得OPT 变到贪心法的解.

4

49

4.9 进程测试

. 取第一个进程的截止时间作为第一把进程按截止时间排序取第个进程的截止时间作为第

个测试点, 然后顺序检查能够被这个点测试的进程(开始时

间小于等于测试点),直到找到下一个不能被测试到的进程等直个

为止. 取这个进程的截止时间作为下一个测试点. …,直到检

查完所有的进程为止

证明按照步数归纳即可. 伪码略.

时间W(n)=O(n log n)

t1t2t3

51⎧≤++32112243x x x 5.1 求解⎩⎨为非负整数321,,x x x 34个.

(0,0,0), (0,0,1), (0,0,2), (0,0,3), (0,0,4), (0,0,5), (0,0,6),(010)

(011)(012)(013)(014)(0,1,0), (0,1,1), (0,1,2), (0,1,3), (0,1,4)(0,2,0), (0,2,1), (0,2,2)

(030)

(0,3,0),(1,0,0), (1,0,1), (1,0,2), (1,0,3), (1,0,4)(1,1,0), (1,1,1), (1,1,2)(,,),

(,,),(,,)(1,2,0),

(2,0,0), (2,0,1), (2,0,2), (2,0,3)()

()(

)()(2,1,0), (2,1,1)

(3,0,0), (3,0,1)

6(4,0,0)

525.2

配件选择问题回朔法:按照价格从小到大对零件排序. 设解向量为, x i =j 表示第i 号零件由j 号供应商供货. 1≤x ≤m . j 结点表示已经选择了前k 号零件的供应商, 约束条件:选择了下一个零件后总价格不超过120.约束条件:选择了下个零件后总价格不超过120. 代价函数为

∑n k ∑+===+k j jl m l i ix w w

i 1,...2,11}

{min 其中w jl 表示第l 个供应商j 号零件的重量. 树省略解为<3123>价值为119

7

树省略,解为<3,1,2,3>, 总重量为31,价值为119.

53L i

5.3 Latin方

,x2,…,x12>, 有24 个Latin方.

>24

解向量为

1

<2,1,4,3,…>: 4个<2,3,4,1,…>: 2个,,,,个,,,,个

<2,4,1,3,…>: 2<3,1,4,2,…>: 2

<3,4,1,2,…>: 4个<3,4,2,1,…>: 2个

<4123>:2<4312>:2

<4,1,2,3,…>: 2个<4,3,1,2,…>: 2个

<4,3,2,1,…>: 4个

相关文档
最新文档