随机化算法:一种在运行过程中使用随机性(例如随机数)来做决策的算法。它的输出或运行时间通常带有概率性质,常用“期望时间”“成功概率”等指标来分析。注:相关概念还有 Monte Carlo(允许小概率出错) 与 Las Vegas(保证正确但时间随机) 两类。
/ˈrændəmaɪzd ˈælɡəˌrɪðəm/
A randomized algorithm can be faster on average.
随机化算法在平均情况下可能更快。
By introducing randomness, the randomized algorithm avoids worst-case inputs and achieves an expected linear running time, though individual runs may vary.
通过引入随机性,随机化算法可以避开最坏情况输入,从而达到期望线性运行时间,尽管每次运行的耗时可能不同。
randomized 来自 random(随机的)+ 动词后缀 -ize(使……化)+ 过去分词 -ed,表示“被随机化的/采用随机策略的”。algorithm 源自中世纪拉丁语 algorithmus,与波斯数学家 al-Khwarizmi(花剌子密) 的名字有关,后来泛指“计算步骤与规则”。