graph-theory相关内容

使用公交车在城市公共交通

我开发一个旅程规划网站。有几件事情是简单的在这种情况下,目前即现在的网站只能够规划公交线路,公交车的定时是当前不可用。因此,这意味着我们只有存储在数据库中的巴士路线,自总线时序不是可用,因此等待时间旅行者是不相关的,以及。什么是可用的是覆盖两站之间为单个总线的时间和距离。 我觉得用一个无向加权图存储每一个巴士站,每一个专用总线的时间和距离成本将要走的路。然后我可以使用Dijkstra算法来计算基 ..
发布时间:2015-11-30 16:07:28 C#/.NET

鲜明的非循环路径,从A数[A,B]到A [C,D]

我正在写一个推箱子求解器的乐趣和实践,它使用一个简单的算法(像BFS有一点区别的)。 现在我想估计它的运行时间(O和欧米茄)。但需要知道如何计算的非循环路径计数从一个顶点到另一个网络中。 其实我想一个前pression,计算的有效路径数量,顶点时* n矩阵的两个顶点之间。 有效的路径: 在访问每个顶点0次或一次。 在没有电路 例如,这是一个有效的路径: ,但这不是 所需要的是一 ..
发布时间:2015-11-30 16:02:45 C/C++开发

算法寻找多余的边以图或树

有没有一个既定的算法找出多余的边在图形? 例如,我想找到A-> D和A->电子是多余的,然后摆脱他们,像这样的: => 编辑:Strilanc是不够好,读懂我的心思我。 “冗余”太强一个字的,因为在上面的例子中,无论是A-> B或A-> c为认为是多余的,但A-> d为 解决方案 您要计算它保持顶点可达最小的曲线。 这被称为图的传递减少。维基百科的文章应该让你开始走上正确的道路。 ..
发布时间:2015-11-30 16:02:16 C/C++

大厦或找到一个"相关的术语;建议功能

由于输入的几句话,我想有一个实用工具,将返回相关的术语,短语或概念的多样化。一个需要注意的是,它会需要有术语的大图,首先,否则该功能不会是非常有用的。 例如,提交“棒球”将返回 [“游击手”,“贝比鲁斯”,“界外球”,“类固醇”,...] 谷歌设置是我能找到的这种功能的最好的例子,但我不能使用它,因为他们有没有公共API(和我不会违背自己的TOS)。此外,单字输入不争取的结果非常多 ..
发布时间:2015-11-30 16:01:04 C/C++

什么是通过一个小世界图寻找路径的最有效方法是什么?

我有加权节点与边缘的连接节点簇在一起的海洋。此图如下典型的小世界的布局。 我希望能够找到一个寻路算法,这是不昂贵的处理器供电方面,发现沿着其中的节点是最有利的加权的最佳路径的路径,最快的路线是不是最重要的因素。 该算法,也考虑到了承载,和流量重新路由。 (旁注:可以在这里用神经网络) 感谢 我看 ACO 。有什么比ACO更好地为这样的问题? 右键的的 A * 算法找出最少的成本和 ..
发布时间:2015-11-30 16:00:30 C/C++

哈密​​尔顿路径和欧拉路径的区别

能否有人告诉我哈密尔顿路径和欧拉路径之间的差异。他们似乎相似! 解决方案 一个欧拉路径是穿越每条边恰好一次不重复,如果它在初始顶点结束那么它是一个欧拉循环的路径。 一个哈密尔顿路径,通过每一个顶点(注意不是每边)传递,只有一次,如果它在初始顶点结束那么它是一个汉密尔顿的周期。 在一个欧拉路径,你可以通过一个顶点超过一次。 在一个哈密尔顿路径,你可能无法通过,虽然所有的边缘。 ..
发布时间:2015-11-30 15:56:56 C/C++

我怎么能证明与QUOT;六度&QUOT的;概念编程?

我有2000万用户和连接的那些人之间的数据库。我如何证明“六度分离”概念的的概念,以最有效的方式编程? 文章约六度分隔理论 链接> 解决方案 您只是想衡量直径图形。 这也正是度量,找出最间隔地连接节点之间的分离中的曲线图。 很多关于谷歌的算法,升压图表了。 ..
发布时间:2015-11-30 15:56:17 C/C++

构造一个最小生成树覆盖的顶点的特定子集

我有一个无向,正边重图的(V,E)的对,我希望有一个最小生成树覆盖的一个子集的 K 的顶点的 V 的。 我不限制生成树的大小的 K 的顶点;而我很清楚的这的* K *顶点必须包含在MST。 从整个MST开始,我可以削减下来的边缘/节点,直到我得到的最小生成树包含所有的 K 的。 我可以用Prim算法来获取整个MST,并开始删除边/节点,而子集k的MST不被破坏;作为选择,我可以用弗洛伊德 - ..
发布时间:2015-11-30 15:55:30 C/C++

好的算法查找(稀疏)图的直径?

我有一个大,连接,稀疏图在邻接表的形式。我想找到两个顶点是,远越好,也就是说,图表和两个顶点的直径实现了。 我在两个无向和有向箱子感兴趣此问题,对于不同的应用。在定向的情况下,我当然关心执导的距离(最短定向路径从一个顶点到另一个)。 有没有比计算全对的更好的方法最短路径? 修改的:通过“相距甚远越好”,我当然指的是“最长最短路径” - 即,最高在所有对的最短距离的顶点从一到其他 解决方案 ..
发布时间:2015-11-30 15:51:39 C/C++

我如何才能找到100移动目标之间的最短路径? (现场演示包括在内。)

背景 本图片说明了这个问题: 我可以控制的红圈。这些目标是蓝色的三角形。黑色箭头指示的方向,该目标将移动。 我要收集所有目标的步骤的最小数量。 每个转向我必须向前1步或左/右/向上或向下。 每个转向按在板上显示的方向上的目标,也将移动1步。 演示 我已经提出了这个问题的可玩演示在这里对谷歌应用程序引擎。 我会非常有兴趣,如果任何人都可以击败的目标分数,因为这将表明,我目前的算法是最 ..
发布时间:2015-11-30 15:49:27 前端开发

算法找到'最大'独立设置在一个简单的图

在的话,可以有人张贴方向,争取找到了'最大'独立设置在一个简单的图? 我读了一些东西ETH网站,说我们可以找到这样的O(N)通过简单地选择一个随机的顶点v比扫描休息,试图寻找是否有从v到其余的优势。 感谢 解决方案 是的,根据定义,最大indpendent组是其中没有更多的顶点可以在不违反“独立”条件下增加了一个独立设置的。 所以,刚刚好转的顶点,直到你可以挑不出更会给你一个极大独立集, ..
发布时间:2015-11-30 15:43:29 C/C++

使用Dijkstra的找到一个最小生成树?

Dijkstra的的通常用于找到在两个节点之间的最短距离图形。它可以用来寻找最小生成树?如果是这样,怎么样? 编辑:这不是功课,但我想了解在一个旧练习考试的问题 解决方案 严格来说,答案是否定的。 Dijkstra算法发现2个顶点上的曲线图之间的最短路径。然而,一个非常小的变化的算法产生另一种算法,并有效地产生MST。 的算法设计手册是最好的书,我发现来回答类似这样的问题。 ..

Dijkstra算法背部追踪?

在 如果有什么路径1,3,6,5被证明是非常低的成本?例如,在3-6重量为1,并在6-5重量为2? Dijkstra算法不会考虑这条道路,因为它只是看起来领先一步;它跳过节点3 是可以接受指定的参数,使算法看2,3,4 ...... n步提前选择每一个节点之前?我知道这可能炸掉计算时间,但只要节点不是非常密集的(即每个节点不超过3个或4个连接),这可以为我们特定的数据集提供的性能和最佳的解决方 ..
发布时间:2015-11-30 15:28:10 Python

查找所有周期中无向图

如果我有一个无向图,我怎么能得到所有周期的列表? 例如,从下面的图中,我希望循环: (A,B,D,E,C) (A,B,C) (B,D,E) 解决方案 您presumably只想要简单的周期(那些不重复的顶点),或者还有他们的无限数量。即使这样,也可以是循环的一个指数编号。也许,这是不是你真的想解决这个问题? ..
发布时间:2015-11-30 15:22:52 C/C++

查找所有可能的欧拉周期

我已经实现了一个算法来找到一个欧拉循环对于给定的起始顶点(使用DFS和移除参观边)无向图,但它总是返回只有一条路径。如何修改该算法来搜索所有可能的欧拉周期为一个顶点? 下面是相关的code: 的typedef INT图[200] [200] //邻接矩阵 INT V,E; //顶点数,边数 ...... 无效DFS(图&安培; G,INT X){ INT I; 推(X); ..
发布时间:2015-11-30 15:22:47 C/C++

非循环路径的所有节点

有一个算法或一组算法,将让你找到最短的步行距离从任意起始节点,这样每个节点被访问过的重量,无向图?这不是很旅行商,因为我不关心,如果一个节点被访问超过一次。 (它甚至没有如果你把它返回到开始关系 - 漫步者可以结束在一些遥远的节点,只要它是需要访问所有节点的最后一个),这不是很最小生成树,因为它可能是去甲 - >乙 - “ç - > A - > D的访问A,B,C和D(非唯一的)最短路径我的直觉说 ..
发布时间:2015-11-30 15:20:42 C/C++

的边缘在Dijkstra算法松弛

这是什么 边的放松 的意思是图论的背景下?我碰到这个,而在Dijkstra算法单源最短路径学习了。 解决方案 这里的一个这也解释了缓和的概念的算法很好的说明。 的“松绑”的概念来自于估值之间的类比 最短路径和一个螺旋拉伸弹簧的长度,其中的 不用于COM pression。最初,最短成本 路径是高估了,比做伸出来的春天。由于短 路径被找到时,估计的成本降低,并且弹簧是 轻松。最终,最短路径 ..
发布时间:2015-11-30 15:18:16 C/C++

什么是&QUOT的意义;从不同的顶点链"在这个近邻算法?

下面的伪code是的的的算法设计手册的(第7页从的这个PDF )。 这个例子是一个有缺陷的算法,但我还是真的想了解它: [...] A二FF erent想法可能是反复连接最接近的一对 终端的连接不会产生问题,如 premature终止循环。每个顶点开始作为其自身 单个顶点链。合并一切融合在一起之后,我们最终会 用含有所有点在它的单链。连接 网络最终两个端点给了我们一个周期。在执行过程中的任 ..
发布时间:2015-11-30 15:18:09 C/C++

一个有趣的图形任务

目前有n个顶点的树。要求我们计算一个多集的S最小尺寸例如为每个边(u,v)的树中的以下中的至少一个成立: U&的;小号 V&中;小号 有至少两个顶点S中,其每一个是相邻的U或V S是一个多集,一个顶点可以是S中多次。 我的预感是如下。首先,我们考虑到以下事实:在最优解每个顶点S中最多两次。因此,我们可以在后序遍历树,并计算结果为3的情况下一个顶点不在最佳S,它在一次和它的在两次 不幸的是我 ..
发布时间:2015-11-30 15:14:37 C/C++