【leetcode】204--计数质数-暴力-&-埃拉托斯特尼法

简介: 【leetcode】204--计数质数-暴力-&-埃拉托斯特尼法

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

示例:

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

js暴力解法:

/**
 * @param {number} n
 * @return {number}
 */
var countPrimes = function(n) {
  var count = 0;
  function isPrime(num){
    for(var i=2;i<=Math.sqrt(num);i++){
      if(num%i===0) return false
    }
    return true
  }
  for(var j=2;j<n;j++){
    if(isPrime(j)){
      count++
    }
  }
  return count
};

js埃拉托斯特尼筛法

/**
 * @param {number} n
 * @return {number}
 */
var countPrimes = function(n) {
  var count = 0;
  var times = Array(n).fill(0);
  for(var i =2;i<times.length;i++){
    if(!times[i-1]){
      count++;
      for(var j=i*i;j<=n;j+=i){
        times[j-1]=true
      }
    }
    
  }
  return count
};
相关文章
【Leetcode -696.计数二进制字串 -697.数组的度】
【Leetcode -696.计数二进制字串 -697.数组的度】
33 0
【Leetcode -292.Nim游戏 -326. 3的幂 -338.比特位计数】
【Leetcode -292.Nim游戏 -326. 3的幂 -338.比特位计数】
36 0
|
6月前
|
JavaScript
【leetcode】204. 计数质数 暴力 & 埃拉托斯特尼法
【leetcode】204. 计数质数 暴力 & 埃拉托斯特尼法
38 0
|
6月前
LeetCode题 338比特位计数,20有效的括号,415字符串相加
LeetCode题 338比特位计数,20有效的括号,415字符串相加
64 0
|
6月前
|
机器学习/深度学习 算法 vr&ar
☆打卡算法☆LeetCode 204. 计数质数 算法解析
☆打卡算法☆LeetCode 204. 计数质数 算法解析
|
6月前
leetcode-338:比特位计数
leetcode-338:比特位计数
35 0
力扣刷题记录——326.3的幂、338. 比特位计数、342. 4的幂、350. 两个数组的交集 II
力扣刷题记录——326.3的幂、338. 比特位计数、342. 4的幂、350. 两个数组的交集 II
力扣刷题记录——326.3的幂、338. 比特位计数、342. 4的幂、350. 两个数组的交集 II
|
2月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行