第3章算法设计与分析基础.pptVIP

  • 4
  • 0
  • 约4.07千字
  • 约 35页
  • 2017-07-07 发布于浙江
  • 举报
第3章算法设计与分析基础

第九章 贪心法 什么是贪心? 逐步给出解的各部分, 在每一步“贪婪地” 选择最好的部分解,但不顾及这样选择对整体的影响, 因此一般地得到的不是最好的解。 每一步要满足的条件 可行 局部最优 不可取消 第九章 贪心法 9.1 Prim算法 9.2 kruskal算法 9.3 Dijkstra算法 9.4 哈夫曼树 9.1 Prim算法 设G =(V,E)是无向连通带权图,E中每条边(v,w)的权重为c[v][w]。 如果G的子图G’是一棵包含G的所有顶点的树,则称G’为G的生成树。 在G的所有生成树中,所有边的权重总和最小的生成树称为G的最小生成树。 9.1 Prim算法 图的最小生成树在实际中有广泛应用。 例如,在设计通信网络时,用图的顶点表示城市,用边(v,w)的权c[v][w]表示建立城市v和城市w之间的通信线路所需的费用,则最小生成树就给出了建立通信网络的最经济的方案。 9.1 Prim算法-基本思想 设G=(V,E)是连通带权图,V={1,2,…,n}。如何用贪心呢? 给定一个起始点,如何贪心? 选择与这个起始点最近的点加入 有了n个点,后续如何贪心? 选择与这n个点距离最小的点加入 9.1 Prim算法-基本思想 首先置S={1} 然后,只要S是V的真子集,就作如下的贪心选择: 选取满足条件i∈S,j∈V-S,且c[i][j]最小的边 将顶点j添加到S中。 这个

文档评论(0)

1亿VIP精品文档

相关文档