筛选法求素数
摘要:
我们都知道求一个数是不是素数的方法是十分简单的,但是当你判断一个数字集合里面都有哪些素数的时候,纯暴力法就会显得效率十分低下,这时候就需要用技巧筛掉明显不是素数的数字,剩下的再采用暴力直接求解,那么那些明显不是素数呢?首先偶数全不是素数,其次一个素数的倍数也不是素数,那么筛掉这两种情况剩余的一定是素数(反证法可证明),程序如下: 1 int min,max; 2 int t; 3 int i,j,k; 4 int flag[10000] = {0}; 5 int num[10000]; 6 num[2] = 1; 7 num[1] = 0; 8 ... 阅读全文