非确定性算法

时间:2011-08-18 11:15:55

标签: algorithm turing-machines computation-theory non-deterministic

我需要对非确定性算法的简单描述。我们可以与具有并行处理器的计算机共同使用非确定性算法吗? 请有人向我解释一下非确定性算法

1 个答案:

答案 0 :(得分:2)

非确定性算法是在non deterministic turing machine上运行的算法。
该算法中的每个计算都可以分为2个计算,这些计算是同时计算的。

无确定性算法示例:
Set Cover :“猜测”顶点的子集,并检查它是否是有效的封面。
猜测是:对于每个元素:检查它在集合中的一种可能性,它不在集合中。

它不是并行处理器,因为在这里(非确定性算法),分支的数量不受限制,而在并行处理器中则是如此。在并行计算中,您仍然可以使用2^n OP来查找顶点覆盖,而在非确定性算法中,您只执行n个操作,n个不同的分支。

非确定性机器比并行处理更像quantum computer。 [注意量子计算机仍然'弱'然后是非确定性的图灵机,假设P!= NP,当然]。