Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 非确定性算法_Algorithm_Turing Machines_Computation Theory_Non Deterministic - Fatal编程技术网

Algorithm 非确定性算法

Algorithm 非确定性算法,algorithm,turing-machines,computation-theory,non-deterministic,Algorithm,Turing Machines,Computation Theory,Non Deterministic,我需要一个非确定性算法的简单描述。我们能将不确定性算法与带并行处理器的计算机相比较吗? 请有人确切地给我解释一下非确定性算法非确定性算法是在计算机上运行的算法。 该算法中的每个计算可以分为两个计算,这两个计算是同时计算的 非确定性算法示例: :“猜测”顶点的子集,并检查其是否为有效覆盖。 猜测是:对于每个元素:检查一种可能性,它在集合中,而不在集合中 它不是并行处理器,因为在这里(非确定性算法),分支的数量是不受限制的,而在并行处理器中则是如此。在并行计算中,您仍然必须执行查找顶点覆盖的2^nO

我需要一个非确定性算法的简单描述。我们能将不确定性算法与带并行处理器的计算机相比较吗?
请有人确切地给我解释一下非确定性算法

非确定性算法是在计算机上运行的算法。
该算法中的每个计算可以分为两个计算,这两个计算是同时计算的

非确定性算法示例:
:“猜测”顶点的子集,并检查其是否为有效覆盖。
猜测是:对于每个元素:检查一种可能性,它在集合中,而不在集合中

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


非确定性机器更像,而不是并行处理。[请注意,量子计算机仍然比非确定性图灵机“弱”,当然假设P!=NP]。

你有没有试过在谷歌的StackOverFlow搜索中提出问题的人,并阅读过一些关于它的文章,如果他不懂,就在StackOverFlow中提出他的问题,我不明白为什么有人会给这个人负面评价。(我没有投反对票。)好吧,如果你读过这篇文章,我认为这篇文章很清楚,也许你可以更具体地说明你不理解的地方?“请有人确切地向我解释一下非确定性算法”不是一个很好的问题,很难给出一个不是数学教科书的精确、简洁的答案。我认为维基文章的问题是它引用了非确定性算法的两个概念,但没有过多区分它们,即理论上的[非确定性图灵机]和实际[以非确定性顺序进行处理],这就是我和aioobe争论的问题,我认为wiki页面没有很好地区分它们。另外,从标签的上下文来看,问题非常清楚。分支的数量没有限制与非确定性完全无关。正如我在下面的回答中所说,在两个分支之间进行随机选择会产生一个非确定性算法。@aioobe:请阅读wiki页面以获取更多信息。请引用证明您观点的句子。@aioobe:OP是指理论上的非确定性概念,与非确定性图灵机相关“在计算复杂性理论中,非确定性算法是指,在每一个可能的步骤中,都可以允许多个连续性(想象一个人在森林中沿着一条小路走,每次他再往前走,他必须选择他希望走的路的哪个岔口)。这些算法不会为每个可能的计算路径得出一个解决方案;但是,它们保证为某些路径得出正确的解决方案。这些选择可以解释为搜索过程中的猜测。”