小题目 筛选法求素数

自己弄得一个小测试

用筛选法求素数 一个很简单的算法

筛选法求素数是这样的 先定义一个bool变量数组 (无所谓 只要能够出现01两种状态就可以 0代表不是素数 1代表是素数 用这种方法来标记)

先把数组整体赋值 认为所有的数都是素数

把1初始为非素数(因为1既不是素数也不是合数 所以它是非素数)


然后从 i = 2开始 

首先判断这个数是不是合数 是合数则continue;

不是则对 i * j(j = 1,2,3,。。。正整数)< 你所求的范围开始染相应下标的数组元素 对应的数字就一定是合数

这样筛过以后就会发先合数已经被染 而质数保留(因为并没有对质数进行处理)

这样对于数据比较大的时候 打表使得程序更有效率



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值