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

示例:

输入: 10
输出: 4
解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。

思路:筛法,见代码。

class Solution {public int countPrimes(int n) {// 1. 给数加上标记byte[] nums = new byte[n];for (int i = 0; i < n; i++) {nums[i] = 1;}// 2. 非质数标记清除for (int i = 2; i < n; i++) {if (nums[i] == 1) {// 如果当前数为质数,筛掉倍数数字for (int j = 2; i * j < n; j++) {nums[i * j] = 0;}}}//3. 统计int count = 0;for (int i = 2; i < n; i++) {if (nums[i] == 1)count++;}return count;}
}

leetcode204. 计数质数(vip题)相关推荐

  1. Leetcode每日一题:204.count-primes(计数质数)

    思路:普通的做法肯定超时,这里介绍厄拉多塞筛法,非常适用于质数的题: 比如说求20以内质数的个数,首先0,1不是质数.2是第一个质数,然后把20以内所有2的倍数划去.2后面紧跟的数即为下一个质数3,然 ...

  2. 每天Leetcode 刷题 初级算法篇-数学问题-计数质数

    题目要求: 力扣题解: 代码 import java.util.Arrays;/*** @program: mydemo* @description: 力扣-数学-计数质数* @author: Mr. ...

  3. 埃式筛/厄拉多塞筛法/Sieve_of_Eratosthenes/计数质数

    今天的每日一题是计数质数. 要求统计所有小于非负整数 n 的质数的数量. 为了解这题,学到了一个古老的魔法,快速寻找质数. 搜了下百度,keywords = "prime" &qu ...

  4. 算法---计数质数(Java)

    题目:计数质数 给定整数 n ,返回 所有小于非负整数 n 的质数的数量 . 示例 1: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 . 示例 ...

  5. LeetCode Algorithm 204. 计数质数

    204. 计数质数 Ideas 质数的题目相对来说是个很经典的内容,虽然枚举也可以解决,但是复杂度很高,所以决定用埃氏筛来实现. 埃氏筛的基本思想是:从2开始,将每个质数的倍数都标记成合数. Code ...

  6. 20190911:(leetcode习题)计数质数

    计数质数 题目 大致思路 代码实现 题目 大致思路 实现埃拉托斯特尼筛法 遍历2-根号n,将2的倍数筛选出去,再把3的倍数筛出去,再把5的倍数筛出去-i的倍数筛出去 当i²>=n时跳出循环,剩下 ...

  7. 【LeetCode】计数质数 [M](素数筛选)

    204. 计数质数 - 力扣(LeetCode) 一.题目 给定整数 n ,返回 所有小于非负整数 n 的质数的数量 . 示例 1: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 ...

  8. Day5:计数质数(埃拉托色尼筛选法)

    leetcode地址:https://leetcode-cn.com/problems/count-primes/ Day5:计数质数 一. 问题背景: 统计所有小于非负整数 n 的质数的数量. 二. ...

  9. 筛法快速求素数——leetcode计数质数

    在算法竞赛中经常会遇到求质数的问题,这种题目一般都是要求出一定范围内[0,n]所有的质数或者质数的个数.最直接的思路就是根据质数的定义来判定一个数是不是质数(即一个数不能被除1和它本身外的任何数整除) ...

最新文章

  1. git 修改标签名称_Git常用命令汇总,希望能帮到你
  2. SAP SD基础知识之信用控制范围
  3. java代码二进制转为十六进制_Java 中二进制转换成十六进制的两种实现方法
  4. 《编译原理》课程教学大纲
  5. 【转】Win8/8.1/Win7小技巧:揪出C盘空间占用的真凶
  6. python项目依赖库打包发布方法
  7. 添加删除windows的系统服务
  8. esp32的MQTT物联网开发记录
  9. 【Python笔记】列表基础操作 :创建,增加、删除、查询。附加:练习题。用简单代码解释。
  10. SAP R3 系统技术基础
  11. uni 页面加载完毕_uniapp小程序如何等待数据回来才加载页面?
  12. WPS JS宏表格定位实例
  13. java之冒泡排序8个数
  14. 一篇读懂5G:到底什么是5G?为什么需要5G?5G有哪些机遇?
  15. 人机交互课堂分享 手势交互与体感交互
  16. python从入门到住院_python从入门到入土教程(1)——入门课
  17. C程序设计习题 - 顺序结构
  18. OSChina 周四乱弹 —— 不想写代码,想划水
  19. Xilinx FPGA平台GTX简易使用教程(三)GTX复位与初始化
  20. Ionic3学习笔记(十三)HttpClient 实现 HTTP 请求以及踩过的一些坑

热门文章

  1. python数据预处理_Python数据预处理——缺失值、重复值
  2. nodejs readfilesync 路径_Linux 磁盘多路径聚合multipath
  3. PJSIP学习笔记——从simple_pjsua.c示例程序了解PJSUA-LIB的基本使用流程
  4. linux内核设计与实现 怎么读,《Linux内核设计与实现》读书笔记(一)
  5. _Linux中功能强大的截图工具 - Flameshot
  6. arcgis批量裁剪矢量模型
  7. ArcGis Desktop10 注册机授权方法与安装步骤
  8. 【转】HTTP协议中PUT和POST使用区别
  9. 第二十一节:ADO层次上的海量数据处理方案(SqlBulkCopy类插入和更新)
  10. CTF爬虫:掌握这些特征,一秒识别密文加密方式