摘要: 1 /** 2 * 1.对于T中的每个顶点u,找到u的具有最小权重的连接边。所有到u的连接边都存储在queues.get(u)中。queues.get(u).peek()返回拥有最小权值 3 * 的连接边。如果e.v已经在T中,将e从queues.get(u)中删除。 4 * 2.比较所有这些边,并且找到那个具有cost[u]+e.getWeight()最小值的边。 5 */ 6 public ShortestPathTree getShortestPath(int sourceIndex){ 7 List T = new Ar... 阅读全文
posted @ 2013-11-24 16:22 soul390 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 算法简单描述1).输入:一个加权连通图,其中顶点集合为V,边集合为E;2).初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {},为空;3).重复下列操作,直到Vnew = V:a.在集合E中选取权值最小的边,其中u为集合Vnew中的元素,而v不在Vnew集合当中,并且v∈V(如果存在有多条满足前述条件即具有相同权值的边,则可任意选取其中之一);b.将v加入集合Vnew中,将边加入集合Enew中;4).输出:使用集合Vnew和Enew来描述所得到的最小生成树。 1 //最小生成树Prim算法 2 public MST getMinimumSpannin... 阅读全文
posted @ 2013-11-24 14:55 soul390 阅读(346) 评论(0) 推荐(0) 编辑