【发布时间】:2017-09-24 07:08:40
【问题描述】:
考虑具有 AND 节点和 OR 节点的有向图。仅当激活其中的所有 in 边时,才激活 AND 节点。如果激活其中的至少一条 in 边,则激活 OR 节点。如何设计一个高效的算法来决定是否所有的节点都可以被激活?我想到了一些简单的算法,但它需要 O(n^3) 时间。我还假设最初激活了没有边缘的顶点。我相信 n^3 不是一种有效的算法,并且我缺少一些方法。标记问题可能有解决方案的域。
【问题讨论】:
-
所有没有传入边的节点最初都被激活,然后你通过图传播它并想知道是否所有节点都被激活了?
-
是的,一个不太幼稚的算法..
-
这不是数字逻辑电路。它是一个图表。如果问题令人困惑,我很抱歉。我没有提到任何与数字逻辑电路相关的标签。
-
彼得的回答更好——我认为你应该接受这个,而不是我的。
-
我一定是遗漏了什么,因为似乎答案总是“是”——因为怎么可能连一个节点都没有被激活?
标签: algorithm time-complexity workflow graph-algorithm computation-theory