2013年4月15日

求小于N的所有素数

摘要: 解法1:检查每一个数K,在2~sqrt(K)区间内是否含有它的因子。解法2:我们可以按照从1到N的顺序来验证一个数是否为质数,这样当我们验证K的时候,所有小于K的质数都已经求得。那么我们没必要验证2~sqrt(K)区间内的有没有K的因子,我们只需要验证这个区间内的所有质数中有没有K的因子。解法3:筛选法,先假设所有数都是质数,然后从2开始筛掉所有2的倍数,然后从没被筛掉的第一个数开始,继续筛选。每一个数被筛选了X次,X为它的质因子数目-2。解法4:筛选法,在上述筛选法中每一个数被筛选了X次。例如6,它被2和3各筛选了1次。如何避免这种重复筛选呢?我们可以把一个合数分解为a×p,p为a 阅读全文

posted @ 2013-04-15 13:24 十指之间 阅读(1686) 评论(0) 推荐(0) 编辑

导航