统计所有小于非负整数 n 的质数的数量。
示例:
输入: 10
输出: 4
解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。
寻找质数这种题的最简单的解法就是依照定义,遍历每一个数,然后从2开始到其本身减1,看是否能被中间的数整除,能则不是质数。但是这样的解法时间复杂度太高。有一种方法叫埃拉托斯特尼筛法,简称埃氏筛,也称素数筛。这是一种简单且历史悠久的筛法,用来找出一定范围内所有的素数。计算过程是:给出要筛数值的范围n,找出 n \sqrt n n以内的素数 p 1 , p 2 , . . . , p k p_1,p_2,...,p_k