graph-algorithm相关内容

Dijkstras算法似乎没有工作,我的理解必须是有缺陷

下面是Dijkstra算法我跨pretation所描述的维基百科会处理如下图。 首先,它标志着到所有相邻节点的最短距离,因此得到1和C得到7.然后选取当前最短路径的邻居。这是A的原点被标记为已访问和将不再次考虑。最短(也是唯一)从通过到B的来源路径,现在12,被标记为已访问。从产地到到B目的地的最短路径是13. B被标记为已访问。从通过目的地的来源为C的最短路径是14,但是这是双重的previo ..
发布时间:2015-11-30 20:52:43 C/C++

最近对点

在 http://en.wikipedia.org/wiki/Closest_pair_of_points_problem 我们可以看到,它提到是至多6个点中最接近上的另一半的点,这可以被重新psented如下的图表$ P $: 我的问题是点P1和P2点,以红点的距离将超过的sqrt(2)* D,为什么它是解决方案的一部分?为什么它不是至多4个点是最接近至P而非至多6个点?谢谢你。 解决方案 ..
发布时间:2015-11-30 20:47:53 C/C++

分而治之算法树木

我想写一个鸿沟和放大器;征服算法树。对于鸿沟一步我通过删除节点需要一个算法,划分一个给定的无向图G =(V,E)有n个节点和条边为子树。所有子图应该有它们不包含多属性的 N / 2 节点(树应分别尽可能相等)。首先,我想递归地从树中删除所有的叶子,找到最后剩下的节点,然后我试图找到G中最长的路径,并删除它的中间节点。下面给出的图表显示,这两种方法不起作用: 有一些工作的算法,我想要做什么(返 ..
发布时间:2015-11-30 20:42:53 C/C++

忠告POUR1上SPOJ?

我需要这个问题 POUR1 帮助。我觉得 它可以与暴力破解的方法来解决,但我读,这是一个问题图表(BFS)。我解决了像ABCPATH,LABYR1,PT07Y,PT07Z,位图...问题_ 但我不知道如何处理POUR1在BFS的方式。 有人可以给我一些建议吗? 问题陈述: 给定两个容器,其中一个可容纳一升的水和其他 - B升水,确定的,以获得精确地的c水升在一个容器中所需的步骤数 在开始两 ..
发布时间:2015-11-30 20:38:20 C/C++开发

寻找无向图的所有连接组件

我有对象(无向边)列表如下图所示: 对= [ 对:[“A2”,“A5”], 对:[“A3”,“A6”], 对:“A4”,“A5”], 对:“A7”,“A9​​”] ]。 我需要找到不同的组所有组件(连接节点)。因此,从给定的对我需要: 组= [ 组1:[“A2”,“A5”,“A4”], 组2:[“A3”,“A6”], 组3:[“A7”,“A9​​”] ]。 ..

如何计算最低瓶颈线性时间生成树?

我们可以找到一个瓶颈最小生成树为O(E日志* V)在最坏的情况下,通过使用Kruskal算法。这是因为每一个最小生成树是最起码的瓶颈生成树。 不过,我就死在从这个的过程。 我们如何才能找到一个最小的瓶颈,即使在最坏的情况下生成树的线性时间。请注意,我们可以假设,我们可以计算个密钥的中值线性时间在最坏的情况下 解决方案 获取 V 中,权重的中值| E |边缘。 找到所有边缘的值不大于 V ..

启发式功能,使用星找到路径

我试图寻找以下问题的最优解 表示每个节点内的数字是重新psented为 $ P $(X,Y)。 在相邻节点到节点总是有一个是值是(当前节点y值+1)。 有1在 X 值,当我们从一个节点到其相邻系统变化的成本 在没有成本从节点将与其相邻,如果出现在 X 的值没有变化。 使用相同的是价值2号节点被认为是相邻的。 的最佳解决方案是一个成本最低,我想用A *寻路算法找到一个最佳的解决方案。 我的问题 ..
发布时间:2015-11-30 20:33:16 C/C++

在图论中堆叠

请帮我找到这个问题的一个很好的解决方案。 我们有n个盒子3的尺寸。我们可以定位他们,我们希望把他们在另一个之上有一个最高可高度。我们可以把上其他盒子上面有个箱子,如果2尺寸(宽和lenght)比下面的框的尺寸降低。 有关exapmle我们有3个尺寸宽*深*高,我们就可以在显示它(H * D,D * H,W * D,D * W,H * W,W * H) 请帮我解决这个问题在图论。 在这个问题,我 ..
发布时间:2015-11-30 20:29:33 C/C++

有解决的演习从codeChef麻烦[易]

所以,基本上我感觉是因为这个练习令人难以置信的愚蠢,我花了像4或5个小时试图code吧,到目前为止,我没有成功。 我已经开始认识到这个人是比较容易使用最长路径有树遍历解决的办法,但我不知道(请证实这个给我。),可能是过度杀死,因为它应该是容易的问题之一,所以你可以请帮助我有一些指导或基本的步骤或算法方法如何解决这一个?各种帮助肯定是AP preciated。 PS。我通常会发布一些code一下 ..
发布时间:2015-11-30 20:28:39 C/C++

通过最大流量算法查找网络边缘连接

我想找到的边缘连接(边缘即最小数删除,断开图),使用最大流算法(埃德蒙·卡普/福特Fulkerson增算法)无向图中, 我知道我可以通过找到的曲线图的每两个节点之间的最小的最大流量完成这个任务,但这样会导致O(| V | ^ 2)个流网络的, INT边连通(图G){ INT分钟=无穷大; 对(顶点u:G.V){ 对(顶点v:G.V){ 如 ..
发布时间:2015-11-30 20:27:53 C/C++

以实例VF2算法步骤

有人可以解释VF2算法图同构简单的话的步骤?我在学习这个算法,但它是严酷的没有工作的例子。有人可能会导致我的方向是正确的?谢谢你。 解决方案 我会尽量给你我的previous回答这个问题,一个快速的解释: 我会用同样的例子,一个在我的previous答案: 2的上述曲线图,为V和V'(V'是未在图中,但它是一个在右边) 的VF2算法在图中所描述 一步一步 我想知道,如果V和V'是 ..
发布时间:2015-11-30 20:25:14 C/C++

在三个部分分割的图的三个部分的权重的总和,例如,最大为最小

我要划分与N-加权顶点和N-1条边的图成三个部分,使得在每个部分的所有顶点的重量总和的最大值最小化。这是实际的问题,我试图解决,的http:// www.iarcs.org.in/inoi/contests/jan2006/Advanced-1.php 我认为下面的方法 / *边缘存储在阵列E,以及在邻接矩阵的深度优先搜索。 于E每边缘具有两个属性a和b它们是边缘*的节点/ 最小 - 最大= ..
发布时间:2015-11-30 20:24:23 C/C++

网络流量 - 福特Fulkerson算法

要找到最大流量的曲线图,为什么没有足够仅与饱和在这条道路的最小边的容量都增广路径不考虑回边缘?我的意思是,什么是点称这是一个背边缘,如果我们假设从中流? 解决方案 回到边做福特Fulkerson算法的情况下,你选择最终不是整体流的一部分的路径时,是必要的。 作为一个例子,后沿是必要的,考虑这个流网络: 取值 / \ A B \ / \ 光盘 \ / ..
发布时间:2015-11-30 20:21:38 C/C++

向图,顶点的最大入度

我是想看看网络流量的一些应用程序,当我遇到这个问题: 我们开始有向图, G =(V,E)。我们需要更多的边添加到图表,使得我们有 \ FORALL U,V \在V,E =(U - > v)或E =(V - > U),但不能同时。即,我们希望更多的边添加到图表,使得每对顶点中的图形被连接到彼此(或者与一个传出边缘或呼入边缘但不是两者)。因此,我们总共将有 | V || V-1 | / ..
发布时间:2015-11-30 20:20:20 C/C++

与侵犯边的最小数目拓扑排序循环图的

我要寻找一种方式来对一个给定的有向加权图,包含周期进行拓扑排序。结果不应该只包含顶点的顺序,但也一组边,是由给定的顺序违反的。这组边应是最小的。 由于我的输入图形可能非常大,我不能用一个指数时间的算法。如果这是不可能计算在多项式时间的最佳解决方案,是什么启发了给定的问题是合理的? 解决方案 参加者填写,林,和史密斯提出的一种快速而有效的启发式的反馈弧集问题的。原条款为后面的收费墙,但一个免费 ..

算法找到在网格中随机汉弥尔顿路径?

我在寻找一个有效的算法,它能够找到一个尽可能的随机哈密尔顿路径的一个双向N * M网格。 有谁知道在哪里可以找到,或者如何去构建这样的算法? 我已经找到了一个有效的方法(见下图)。这里的最终结果是一个汉密尔顿的周期。删除随机优势将使其成为哈密尔顿路径。这个算法是有效的,但没有提供足够的随机性。这种做法总会有路径的开始和结束点紧挨着对方,而我想有那些在随机位置。 图片摘自解决方案 您可以与您提 ..
发布时间:2015-11-30 20:18:01 C/C++

给定的长度为3位(-1,0,1)的独特序列的数目相匹配的总和

假设你有一个长度为n的垂直游戏板(是的空格数)。而你有一个有选择的三面骰子:向前走的,留回去之一。如果你去以下或以上的棋盘游戏空格数这是一个无效的比赛。唯一有效的举措,一旦你到达板到底是“留”。鉴于模辊牛逼一个确切的数字,是否有可能通过算法计算出独特的掷骰的那个导致比赛获胜多少? 到目前为止,我已经试过生产的(-1,0,1)每个可能的组合的名单模辊的给定数量,并通过列表排序,以查看是否有任何加起 ..
发布时间:2015-11-30 16:38:02 C/C++

Python中的Dijkstraķ最短路径

我试图做一个小的公共交通路由的应用程序。 psented在以下结构 我的数据重新$ P $: 图= {'A​​':{'B':3,'C':5}, “B”:{“C”:2,“D”:2}, “C”:{“D”:1}, “D”:{'C':3}, “E”:{“F”:8}, “F”:{“C”:2}} 其中: 在图字典键是一个节点 subdict ..
发布时间:2015-11-30 16:36:09 Python

最短路径和放大器;测地线

给出完全由四边形的网格,在每一个顶点有n价(其中n> = 3),并且不在同一平面上,我需要找到从封闭集合每个顶点的网格中距离种子顶点。也就是说,给出一个或多个网格顶点(种子集),我需要建立一个距离图存储在结实每个网格顶点(其中将有来自自己距离0)的距离。 花一些时间来寻找可能的解决方案后,我得到了如下图: 1)它是不平凡的,并且在过去20年左右的时间不同的方法已经被开发 2)每一个算法,考虑 ..
发布时间:2015-11-30 16:26:25 C/C++

稳定的拓扑排序

让说,我有其中的节点存储在一个排序列表的图。我现在想拓扑排序这个图,同时保持那里的拓扑顺序是不确定的原始顺序。 是否有任何好的算法呢? 解决方案 一种可能是计算排在最后拓扑顺序。该算法是保持其含有有效度(超过节点尚未处理)为零节点的优先级队列。多次出队用最少的标签的节点,其追加订单,递减有效度,其继任者,排队是那些现在在度为零。这将产生1234567890关于btilly的例子,但一般不减少倒 ..
发布时间:2015-11-30 16:26:12 C/C++