leetcode刷題--Count Primes
題目:求小於等於n的所有質數數量
現在求質數數量一般用埃拉託斯特尼篩法,簡稱篩法。可能很多學過小學奧數的同學都知道是怎麼回事(小學奧數太可怕了233)基本原理就是從最小的質數開始計算這些質數的倍數,將這些倍數標記為合數,於是小於n的數中除了合數剩下的就是質數了.
需要注意的是1不是質數也不是合數,要先將其標記為0
程式碼:
class Solution:
# @param {integer} n
# @return {integer}
def countPrimes(self,n):
if n<=2:
return 0
map = list(range(n))
map[1]=0
i=2
while (i*i<n):
if map[i] != 0:
j=2
while j*i<n:
map[j*i]=0
j+=1
i+=1
count = 0
for i in map:
if i != 0:
count+=1
return count
相關文章
- 204. Count Primes
- LeetCode C++ 204. Count Primes【Math/Hash Table】簡單LeetCodeC++
- [LintCode/LeetCode] Check Sum of K PrimesLeetCode
- LeetCode 刷題—樹LeetCode
- LeetCode刷題 堆LeetCode
- LeetCode刷題整理LeetCode
- leetcode刷題(一)LeetCode
- LeetCode刷題記錄LeetCode
- leetcode刷題筆記LeetCode筆記
- 如何使用leetcode刷題LeetCode
- Leetcode刷題分類LeetCode
- LeetCode 刷題筆記LeetCode筆記
- Leetcode刷題準備LeetCode
- LeetCode刷題—陣列LeetCode陣列
- LeetCode刷題之第701題LeetCode
- LeetCode 刷題指南(一):為什麼要刷題LeetCode
- Leetcode刷題——求眾數LeetCode
- leetcode刷題記錄 661~LeetCode
- leetcode刷題筆記605LeetCode筆記
- Leetcode刷題系列彙總LeetCode
- Leetcode 38 Count and SayLeetCode
- leetcode刷題筆記(3)(python)LeetCode筆記Python
- LeetCode刷題(javascript,python3)LeetCodeJavaScriptPython
- 用 Rust 刷 leetcode 第七題RustLeetCode
- 用 Rust 刷 leetcode 第一題RustLeetCode
- 用 Rust 刷 leetcode 第三題RustLeetCode
- 用 Rust 刷 leetcode 第二題RustLeetCode
- 用Rust刷leetcode第九題RustLeetCode
- 用Rust刷leetcode第八題RustLeetCode
- 用 Rust 刷 leetcode 第六題RustLeetCode
- 用 Rust 刷 leetcode 第五題RustLeetCode
- 用 Rust 刷 leetcode 第四題RustLeetCode
- 用Rust刷leetcode第十題RustLeetCode
- leetcode排序專題演算法刷題LeetCode排序演算法
- 【Leetcode刷題篇】leetcode56 合併區間LeetCode
- 222. Count Complete Tree Nodes(Leetcode每日一題-2020.11.24)LeetCode每日一題
- LeetCode刷題記錄——day5LeetCode
- LeetCode刷題記錄——day4LeetCode
- LeetCode刷題記錄——day3LeetCode