发展历程 什么是非确定性算法? -技术百科的定义

什么是非确定性算法? -技术百科的定义

目录:

Anonim

定义-非确定性算法是什么意思?

非确定性算法可以为不同执行中的同一输入提供不同的输出。 与确定性算法不同,即使在不同的运行中,确定性算法也只为同一输入产生单个输出,与之不同,非确定性算法会沿各种路径传播以达到不同的结果。

当使用确定性算法很难或很难得出精确解时,非确定性算法可用于查找近似解。

技术百科解释了非确定性算法

非确定性算法的一个示例是在竞争条件下执行并发算法,该条件在不同的运行过程中可能会显示不同的输出。 与确定性算法从输入到输出只经过一条路径不同,一种非确定性算法可以采用许多路径,其中一些到达相同的输出,而另一些到达不同的输出。 此功能在数学上用于非确定性计算模型(如非确定性有限自动机)中。

非确定性算法能够在具有无限数量的并行处理器的确定性计算机上执行。 非确定性算法通常具有两个阶段和输出步骤。 第一阶段是猜测阶段,它使用任意字符来运行问题。

第二阶段是验证阶段,该阶段对所选字符串返回true或false。 可以借助非确定性算法将许多问题概念化,包括计算理论中P与NP的未解决问题。

非确定性算法用于解决允许多个结果的问题。 非确定性算法产生的每个结果都是有效的,而与执行期间算法做出的选择无关。

什么是非确定性算法? -技术百科的定义