小白学习[leetcode]之204计数质数

题目的链接在这里:https://leetcode-cn.com/problems/count-primes/


题目大意

统计所有小于非负整数 n 的质数的数量。

一、示意图

在这里插入图片描述

二、解题思路

java实现

代码如下:

class Solution {
    
    
    public int countPrimes(int n) {
    
    
             if(n==0||n==1)
            return 0;
        boolean isPrime[]=new boolean[n];
        //然后初始化
        for(int i=0;i<n;i++){
    
    
            isPrime[i]=true;
        }
        isPrime[0]=false;
        isPrime[1]=false;
        int ans=0;
        for(int i=2;i<n;i++){
    
    
            if(isPrime[i]){
    
    
                ans++;
                //把他的倍数也全都加起来
                for(int j=2*i;j<n;j+=i){
    
    
                    isPrime[j]=false;
                }
            }
        }

        return ans;

    }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41115379/article/details/113383995