计算机程序设计

Kruskal算法 - 最优框架的构建

在19世纪初的几何学家从柏林雅各布·史坦纳设置如何使它们的长度是短到三个村连接的任务。 后来,他总结了问题:它需要找到一个平面上的点,从它到n其他点的距离是最低的。 在20世纪,它继续研究这个主题。 会议决定采取一些点,他们这样一种方式,它们之间的距离是最短的连接。 这一切问题的特殊情况正在研究中。

“贪婪”算法

Kruskal算法指的是“贪婪”算法(也称为梯度)。 这些的本质 - 对每一个步骤的最高胜利。 并非总是如此,“贪婪”算法提供了解决这一问题的最佳解决方案。 有一种理论,可见其应用到特定的任务,他们给了最佳的解决方案。 这是拟阵理论。 Kruskal算法是指这样的问题。

寻找最低胴体重

观察算法构造的最佳帧计数。 它的问题如下。 丹无向图,而不平行的边缘和环,以及边的集合给出加权函数w,其数量分配给每个边e - 重量肋 - 瓦特(e)中。 所述多个肋中的每个子集的重量是它的边缘的权重的总和。 需要找到一个小,重量轻的骨架。

描述

Kruskal算法的工作原理。 首先,将初始图的所有边缘被布置在上升的权重的顺序。 最初,该帧不包含任何肋,而是包括所有顶点。 该算法至胎体,这是一种生成森林的已构造部的下一个步骤之后,一个边缘被添加。 它不是任意选择的。 图中的所有边,不属于框架,可以被称为红色和绿色。 每一个红边的顶部是在建森林连接相同的组件,绿色上衣 - 不同。 因此,如果您添加到红边,有一个周期,如果绿色 - 此步骤后所收到的木连接组件将小于一。 因此,所产生的建筑不能添加无红边,但可以添加任何绿色的边缘,以获得森林。 并增加了以最小的重量绿色的边。 其结果是最小重量的框架。

履行

表示当前森林F.它把组顶点的连通性领域(他们的结合形式F和他们是不相交)。 在红色顶点的两边,他们趴在一块。 的部分(X) - ,对于每个顶点X返回名称的一部分的功能,它属于X。 团结(X,Y) - 即建立一个新的分区,由组合的x和y的部分和所有其他部件的过程。 设n - 边数。 所有这些概念都包含在Kruskal算法。 执行:

  1. 安排从第一至第n个权重按升序图的所有边缘。 (艾,双 - i相顶点边缘数)。

  2. 对于i = 1到n做。

  3. X:=部分(AI)。

  4. Y:=部件(BI)。

  5. 如果x不等于然后ÿ团结(X,Y),以包括与边缘F I号码。

正确性

令T - 其任意帧 - 用Kruskal算法和S构成的原始图形的帧。 我们必须证明,W(T)不大于W(S)更大。

设M - 多个翅片S,P的 - 多个翅片T.如果S不等于T,则有一个框架肋等T,不属于S. S.等邻接周期中,它被称为C. C来自任何边缘ES除去,属于S.我们得到了一个新的框架,因为边和顶点是一样的。 它的重量是不大于W(S),因为W(等)不再在电源的Kruskal算法瓦特(ES)更大。 此操作(上肋替代Ť的肋骨)将被只要接收T.每个后续接收到的帧的重重复不大于先前的重量,这意味着更大的使得w(T)不大于W(S)大。

Kruskal算法的鲁棒性,从雷达 - 埃德蒙兹对拟阵定理如下。

应用实例克鲁斯卡算法

丹图形与节点A,B,C,D,E和肋(A,B),(A,E),(B,C),(B,E),(C,D),(C,E) ,(D,E)。 边缘的权重示于表及图中。 最初,建设森林F包含图的所有顶点,并且不包含任何肋骨。 算法的Kruskal第一加肋(A,E),由于重量具有最低的,并且顶点a和e是在不同组分木材连接F(肋(A,E)为绿色),则肋(C,D),因为至少该边缘重图中的边,不属于F,且它是绿色的,则基于同样的理由累积边缘(A,b)。 但边缘(B,E)获得通过,即使他和其余边缘的最小重量,因为它是红色:顶点B和E属于森林连接F中的相同的组件,也就是说,如果我们增加至F的边缘(B,E),形成周期。 然后加入绿色边缘(B,C),被传递红色边缘(C,E),然后D,E。 因此,边依次加入(A,E),(C,D),(A,B),(B,C)。 从nihera最佳帧和由原始图的。 因此,在这种情况下,操作的算法 克鲁斯卡。 一个例子被示出。

该图显示的曲线图,它由两个连接的元件。 粗线指示(绿色)用Kruskal算法构造的最优帧肋。

顶部图为原始图,底部 - 重量最轻的骨架,为他制造使用的算法。

所添加的肋的序列(1.6); (0,3),(2,6)或(2,6),(0,3) - 并不重要; (3,4); (0,1),(1,6)或(1,6),(0,1),还关心(5,6)。

Kruskal算法发现实际应用中,例如,优化垫片通讯,道路在每个国家新屋地方,以及在其他情况下。

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 zhcn.delachieve.com. Theme powered by WordPress.