Python实现:确定性Miller-Rabin素性测试算法
确定性Miller-Rabin素性测试算法是一种高效的判断一个数是否为素数的算法,相比于传统的质数检测算法和概率性的Miller-Rabin测试算法,它具备了更高的准确性和可靠性。
实现原理:
该算法需要使用到两个步骤,一个是预处理部分,另一个是测试部分。
在预处理阶段,我们使用线性筛法得到2~N范围内的所有素数,其中 N 是待判断的数。同时,我们还需要预处理每一个小于等于 SQRT(N) 的素数,计算出它们的一些参数,以便于后面进行测试。
在测试阶段,我们按照步骤一次进行多次的测试,直到确认该数为素数或者非素数为止。
源码实现:
以下是Python代码的完整实现,包括预处理函数以及测试函数。
import random
from math import gcd,sqrt
def Miller_Rabin(n)
本文介绍了使用Python实现的确定性Miller-Rabin素性测试算法,该算法通过预处理和测试阶段,高效准确地判断一个数是否为素数,尤其适用于大数据下的素性检测。
订阅专栏 解锁全文
1749

被折叠的 条评论
为什么被折叠?



