新起点
试除法
2020-12-02 17:54:19

试除法是整数分解算法中最简单和最容易理解的算法。首次出现于意大利数学家斐波那契出版于1202年的著作。

给定一个合数(这里,是待分解的正整数),试除法看成是用小于等于 n {\displaystyle {\sqrt {n}}} 的因子。因为它检查的所有可能的因子,所以如果这个算法“失败”,也就证明了是个素数。试除法可以从几条途径来完善。例如,的末位数不是0或者5,那么算法中就可以跳过末位数是5的因子。如果末位数是2,检查偶数因子就可以了。

某种意义上说,试除法是个效率非常低的算法,如果从2开始,一直算到 n {\displaystyle {\sqrt {n}}} 有大小接近的素因子(例如公钥密码学中用到的),试除法是不太可能实行的。但是,当有至少一个小因子,试除法可以很快找到这个小因子。值得注意的是,对于随机的,2是其因子的概率是50%,3是33%,等等,88%的正整数有小于100的因子,91%的正整数有小于1000的因子。

网站公告: