1.运行 PrimeChecker.bat 可以对一个素数进行检测
输入:一个int数(10进制不要超过6位,超过6位要等很久)
输出:Prime/Composite
2.运行 PrimeCreater.bat 可以随机生成一个n-bits的素数
输入: 一个int数(最好是小于或等于17的数,超过17要等很久)
输出:一个n-bits的素数
体会和观点:理论上这个算法的复杂度是O(log21/2n),而我们平常使用的遍历法(从1遍历到根号n)的时间复杂度为O(根号n),从纯数学角度来看,O(log21/2n)是比O(根号n)更加低阶的,但是前提是n趋近于正无穷的情况下,当n值较小时,O(log21/2n)远远大于O(根号n),即在一般的机器上,AKS算法只能算法百万级别的数,而遍历法却可以瞬间秒杀Integer以内的数,综合以上,AKS是给大型计算机使用的素数算法,是为未来设计的优化算法,至少在当今时代是没有价值的。
- 1
- 2
前往页