算法考前复习重点

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

算法复习提纲

程序填空题:

简答题:

算法分析题:

算法设计题

贪心算法中每次做出的贪心选择都是当前最优的选择

=()2

3n O

n n

+-=()

21111O

动态规划求最短路径问题,旅行商问题。只考递归实现。

在算法分析中,什么是P类问题,什么是NP类问题,并举出一个NP类问题示例贪心法求单源最短路径问题(DIjkstra法)

回溯法求图的m着色问题并用递归树分析其复杂度(老师画过多次)。

递归树见算法导论第四章。重点。

理解回溯法中递归回溯与迭代回溯的一般形式

//用分支定界法求单源最短路径问题,剪枝函数的设计。

画出TSP问题(4个城市)的分支定界法求解过程。剪枝函数的设计,按最后一次课老师讲的画,书上有错,优先级的定义同单源最短路径问题优先级的定义类似。

分支定界法求解,画下图单源最短路径问题的解空间树(U为源点)

回溯法与分支定界法的根本区别是搜索方式的不同BFS 和DFS

复习建议:好好理解上述问题的求解思想并调试代码学习。

TSP 动态规划法:

假设从顶点i 出发,令)',(V i d 表示从顶点i 出发经过V ’中各个顶点一次且仅一次,,最后回到出发点i 的最短路径的长度,开始时,V ’=V-{i},于是,旅行商问题的动态规划函数为:

)

({}),()

'})}({',(min{)',(i k c k d V k k V k d c V i d ki ik ≠=∈-+= )

2()1( 下面举个实例说明算法的执行过程。

下图是无向带权图的邻接矩阵表示法: ⎢⎢⎢⎢⎣⎡∞=763C 323∞ 226∞ ⎥⎥⎥⎥⎦

⎤∞237

⎪⎪⎩

⎪⎪⎨⎧≠∞===≠+=≤≤无后继且有后继且v t v , 0start ,v v , 01,v t v , )}cost(v ] v {c[v,min cost(v)s i i m i 1start

在上图所示的带权图中,从城市0出发,经城市1,2,3然后回到城市0的最短路径长度为:})}2,1{,3(}),3,1{,2(}),3,2{,1(min{})3,2,1{,0(030201d c d c d c d +++=

这是最后一个阶段的决策,它必须知道})3,1{,3(}),3,1{,2(}),3,2{,1(d d d 的计算结果,而:})}2{,3(}),3{,2(min{})3,2{,1(1312d c d c d ++=

})}1{,3(}),3{,1(min{})3,1{,2(2321d c d c d ++=

})}1{,2(}),2{,1(min{})2,1{,3(3231d c d c d ++=

这一阶段的决策又依赖于下面的计算结果:

{}),2(})2{,3({}),,3(})3{,2({}),,2(})2{,1(322312d c d d c d d c d +=+=+= {}),1(})1{,3({}),,1(})1{,2({}),,3(})3{,1(312113d c d d c d d c d +=+=+= 而下面的就可以直接获得(括号中是该策略引起的路径):

)03(7{}),3(),02(6{}),2(),01(3})0{,1(302010>-==>-==>-==c d c d c d 向前推导,可以得到:

)23(862{}),2(})2{,3()

13(633{}),1(})1{,3()

12(532{}),1(})1{,2()

32(972{}),3(})3{,2()

31(1073{}),3(})3{,1()

21(862{}),2(})2{,1(323121231312>-=+=+=>-=+=+=>-=+=+=>-=+=+=>-=+=+=>-=+=+=d c d d c d d c d d c d d c d d c d

再向前推导有:

)

23(7}7,11min{})}1{,2(}),2{,1(min{})2,1{,3()32(8}8,12min{})}1{,3(}),3{,1(min{})3,1{,2()

21(11}11,11min{})}2{,3(}),3{,2(min{})3,2{,1(323123211312>-==++=>-==++=>-==++=d c d c d d c d c d d c d c d

最后有:

})}2,1{,3(}),3,1{,2(}),3,2{,1(min(})3,2,1{,0(030201d c d c d c d +++=

)302010(14}14,14,14min{}77,86,113min{>->->-==+++=or or 所以,从顶点0出发的旅行商问题的最短路径长度为14,其中一条路径为01320>->->->-。

相关文档
最新文档