graph-theory相关内容

算法,简化债务加权有向图

我一直在使用一个小python脚本我写来管理债务之间我的室友。它的工作原理,但也有一些缺失的功能,其中之一是简化了不必要的复杂的债务结构。例如,如果下面的权有向图重新presents一些人的箭头重新它们之间present债务(爱丽丝欠鲍勃$ 20和查理$ 5鲍勃欠查理$ 10等。): 显然,此图应被简化为下面的图: 有没有在$ 10没有意义从Alice给Bob,然后从鲍勃·查理做它的方 ..
发布时间:2015-11-30 21:30:09 C/C++

为什么贪心算法没有找到最大独立集图的?

给定一个图G,为什么下面的贪心算法不能保证找到最大独立集的G 贪婪(G): S = {} 虽然G是不是空的: 令v为以最小程度的G中的一个节点 S =工会(S,【V】) 删除V和它的邻居给G 返回小号 我想知道,有人可以告诉我一个图,其中该算法失败?一个简单的例子 解决方案 我不知道这是最简单的例子,但这里是一个失败:的 http://imgur.com/QK ..
发布时间:2015-11-30 21:28:06 C/C++

检测图中周期

可能重复: 的发现,图中的所有周期 有谁能够给我的教程,算法,...为检测周期图? 我找到一些算法,并加以实施,但没有检测到所有周期 strongly_connected_components_algorithm 解决方案 从以上来看数学角度: 输入:图G =(V,E) 假设你的图形是不是不相交的(有每两个顶点之间存在路径) 计算生成树图形的T(也有容易的算法做这一点) 让 ..
发布时间:2015-11-30 21:22:48 C/C++

查找图中两个节点之间的路径,根据给定的标准 - 优化任务

我有以下问题。我有循环,无向,加权图G =(V,E)。我需要根据这些规则,找到简单的路径(无环)两个给定节点之间: 在边缘设置每一个可能的路径查找最小重量值 选择这条道路,它有选择最低值之间的最大最小值从找到的路径 例如,我们图$ P $下面psented: 我们可以尝试找到从节点1简单的路径节点8.有两种可能pathes,列举如下: 1 - > 3 - > 5 - > 8,这条路径上 ..
发布时间:2015-11-30 21:13:04 C/C++

协调COM pression

问题:你有一个N×N个网格(1< = N< = 10 ^ 9)。每个方格可以遍历或阻塞。有M(1< = M< = 100)在网格中的障碍,每一个形如的方格一个1xK或KX1条。每一个障碍是由两个端点(A_I,B_i)和(C_I,D_i),指定的地方A_I = C_I或B_i = D_i。你也给出一个启动方(X,Y)。 现在的问题是:有多少平方距离,如果你可以向左走,向右,向 ..
发布时间:2015-11-30 21:03:01 C/C++

使用先验算法建议

因此​​,一个最近的问题让我知道了,而凉爽的 apriori算法。我明白为什么它的工作原理,但什么我不知道的是实际应用。 presumably的主要原因计算相关项目集是能够提供基于自己的购买(或自备物品,等等),有人建议。但是你如何从一组相关的项集个人建议去了? 维基百科的文章完成: 的第二个问题是生成 从这些大的关联规则 项集与的约束 最小的信心。假设中的一个 大项目集是路,路= {I1 ..
发布时间:2015-11-30 21:02:15 C/C++

我可以从一组随机选择一个元素,如果我不知道集的大小?

我在写一些JavaScript code应该从画布中选择一个随机的项目,如果该项目符合一定的要求。有不同类型的项目(圆形,三角形,正方形等)和通常有不为每个项目种类数相同。的项目被安排在一个层次结构中(这样的方可以包含几个圈,和一个圆可以包含其他圆圈等 - 它们都可以嵌套)。 现在,在选择一个随机的项目我(原)的做法是: 递归遍历画布上,并建立一个(可能是巨大的!)的产品清单 随机播放列表 从 ..
发布时间:2015-11-30 21:00:53 前端开发

修剪流浪节点的大图

我有包括约35000个节点的曲线图重新psented以纯文本$ P $: 节点1 - > node35000 node29420 - > node35000 node2334 - > node4116 ... 我想通过去除不属于链上至少有三个长的部分节点修剪下来。所以,如果我只有 1 - > 2; 2 - > 3; 3 - > 4; 0 ..
发布时间:2015-11-30 21:00:12 C/C++

排序地理不连续的线段沿着一个隐含的曲线

考虑: 一个集(为便于讨论,我们将其称为取值),这是一个 无序收集线段。每个线段被定义为两个经纬度端点。而所有的线段按照隐含的曲线中,有每个段之间的“差距”各种尺寸的,。我们把这种曲线的“暗示”的,因为它没有明确定义的任何地方。我们有可用的唯一信息是包含在取值线段。 所需的结果: 一个序列(为了讨论的方便,我们将其称为研究),这是一个 订购收集线段。每一个线段是指像以前一样,遵循同样的隐含曲 ..
发布时间:2015-11-30 20:57:57 C/C++

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

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

强连通用于哪些成分?

我已经发现了几个算法,解释的如何的发现有向图的强连通的组件,但没有解释的为什么的,你会想这样做。什么是强连接组件一些应用程序? 解决方案 您应该检查蒂姆拉夫加登的算法导论课程Coursera。对于每一个算法,他去了,他解释说,它的一些应用。非常有用,让人一看学习算法的价值! 使用强连通分量,我记得他说的是,人们可以用它来寻找的人谁是一组巨大的数据更密切相关的群体。 Facebook认为,他们 ..
发布时间:2015-11-30 20:44:20 C/C++

分而治之算法树木

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

寻找最小生成树给老MST和一个新的顶点+边缘

在一个样本的问题,我给出一个MST T代表一个加权图G =(V,E)。的问题是,如果一个新的顶点v和所有其边缘是要加入到图中,什么是邻(| V |登录| V |)算法来计算这个新G * =(VU的v的新的MST, E *)。 我唯一的想法到目前为止是: 加分(满分(V))到T 在出每个边e(五)做 设U是e的其他顶点 如果存在从V较低重路径到u然后 删除所有边缘从t这条道路 ..
发布时间:2015-11-30 20:33:27 C/C++

Dijkstra算法不生成最短路径?

我通过最短路径问题采用Dijkstra算法工作。我有麻烦,因为算法应该提供的最短路径,但在运行算法后,我拿到手短路路径。这是算法这只是一个副产品? 我想生成的路径是从 - >以Z 下面是我从应用算法,以最短的距离跳跃在每个顶点我访问得到的路径: 2 4 2 2 1 2 1 1 8 = 23 一个 - > ð - >克 - >的k - >的R - > N ..
发布时间:2015-11-30 20:33:04 C/C++

找到一个线路通过点的最大数

我发现 CareerCup 谷歌的面试问题 给定一个二维平面,假设有在它周围6000点。查找线,传递了最点数。 很多答案的说,这个问题是很难,涉及某种特殊的算法。 但我的看法是不同的,也许我是错的。 这是我的想法: 首先,我会给一个轴系统,以2D平面。因此,每一个点都会有其独特的x和y,即 {X,Y} 。为了简单,我们可以把轴系统的 {0,0} 作为整个平面的左下角,因此每个x和y大 ..
发布时间:2015-11-30 20:33:02 C/C++

如何计算"最短距离和QUOT;两个词之间?

最近我有一次采访,我被要求写一个算法来找出1号更改的最低数量从一个特定的词,以获得给定的话,即总分类> Cot-> Cog->狗 我不希望这个问题的解决方案,只是引导我通过我怎么能在这个算法中使用BFS? 解决方案 根据这个拼字游戏列表,猫与狗之间的最短路径是: ['猫','COT“,”COG','狗'] 从的urllib进口的urlopen 高清get_words(): 尝试: ..
发布时间:2015-11-30 20:32:57 C/C++