Python实现:确定性Miller-Rabin素性测试算法

465 篇文章 ¥39.90 ¥99.00
本文介绍了使用Python实现的确定性Miller-Rabin素性测试算法,该算法通过预处理和测试阶段,高效准确地判断一个数是否为素数,尤其适用于大数据下的素性检测。

Python实现:确定性Miller-Rabin素性测试算法

确定性Miller-Rabin素性测试算法是一种高效的判断一个数是否为素数的算法,相比于传统的质数检测算法和概率性的Miller-Rabin测试算法,它具备了更高的准确性和可靠性。

实现原理:

该算法需要使用到两个步骤,一个是预处理部分,另一个是测试部分。

在预处理阶段,我们使用线性筛法得到2~N范围内的所有素数,其中 N 是待判断的数。同时,我们还需要预处理每一个小于等于 SQRT(N) 的素数,计算出它们的一些参数,以便于后面进行测试。

在测试阶段,我们按照步骤一次进行多次的测试,直到确认该数为素数或者非素数为止。

源码实现:

以下是Python代码的完整实现,包括预处理函数以及测试函数。

import random
from math import gcd,sqrt

def Miller_Rabin(n)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值