博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode204题(一刷)
阅读量:3955 次
发布时间:2019-05-24

本文共 756 字,大约阅读时间需要 2 分钟。

LeetCode204题

解法一

欧拉算法
class Solution { public int countPrimes(int n) {

byte[] check = new byte[n];//用来标记是否已经访问过了,如果访问过了就打1,没访问过打0int[] primeList = new int[n]; //用来记素数int count = 0;//用来记录素数个数for(int i = 2;i< n;i++) {    if(check[i]==0) {    //打了1的就不会再看了,重复赋值浪费时间        primeList[count++] = i; //count变量记录素数个数,数组记录已知的素数的值    }        for(int j=0;j
n) { break; } check[i*primeList[j]] = 1; //标记 x=i*primeList[j],x位置是我访问过的位置,打1 if(i%primeList[j]==0) { //这一部分不好理解,比方说6,之前访问过(2,3),那么6%2==0,不用再检查6%3了,真正负责记录数据的是count变量 break; } } }return count;

链接:

解法二

厄拉多塞筛法

class Solution {

public int countPrimes(int n) {

int[] nums = new int[n];          for(int i=2;i

}

转载地址:http://pbyzi.baihongyu.com/

你可能感兴趣的文章
Sliding Window(POJ-2823)
查看>>
A. Greed CodeForces - 892A
查看>>
最短路 HDU - 2544
查看>>
7-12 列车厢调度(25 分)
查看>>
一个人的旅行 HDU - 2066
查看>>
Reward HDU - 2647 (拓扑排序)
查看>>
最长子序列长度 (动态规划 O(N^2))
查看>>
最长子序列长度 (贪心+二分 O( Nlog(N) ))
查看>>
数塔 HDU - 2084 (简单的dp)
查看>>
超级楼梯 HDU - 2041 ( 简单的dp )
查看>>
Piggy-Bank HDU - 1114 ( 完全背包 )
查看>>
Knapsack problem FZU - 2214 ( 01背包 )
查看>>
瞌睡 (网易笔试题)
查看>>
1009 说反话 (20 分)
查看>>
1010 一元多项式求导 (25 分)
查看>>
1011 A+B 和 C (15 分)
查看>>
1012 数字分类 (20 分)
查看>>
1013 数素数 (20 分)
查看>>
1014 福尔摩斯的约会 (20 分)
查看>>
1015 德才论 (25 分)
查看>>