統計所有小於非負整數 n 的質數的數量。
示例:
輸入:10
輸出:4
解釋: 小於 10 的質數一共有 4 個, 它們是 2,3
,5,7 。
本題的關鍵點在於如何判斷乙個數是質數,一開始的思路是取這個數的一半,然後向下依次取餘,為零就不是質數,具體**如下:
class
solution
}return count;
}public
boolean
isprimes
(int n)
if(n==2)
int len =
(n+1)/
2;for(
int i=
2;i<=len;i++)}
return
true;}
}
該寫法對於測試用例799979超時了,尷尬,想不到辦法了,老實開題解吧,題解裡給出的標準答案是使用埃拉託斯特尼篩法
照葫蘆畫瓢
class
solution
for(
int i=
2;i}return count;
}}
LeetCode 計數質數
計數質數 以下直接摘抄 西元前250年,希臘數學家厄拉多塞 eeatosthese 想到了乙個非常美妙的質數篩法,減少了逐一檢查每個數的的步驟,可以比較簡單的從一大堆數字之中,篩選出質數來,這方法被稱作厄拉多塞篩法 sieve of eeatosthese 具體操作 先將 2 n 的各個數放入表中,...
LeetCode 計數質數
q 統計所有小於非負整數 n 的質數的數量。示例 1 輸入 n 10 輸出 4 解釋 小於 10 的質數一共有 4 個,它們是 2,3,5,7 示例 2 輸入 n 0 輸出 0 示例 3 輸入 n 1 輸出 0 a 如果我們在進行順序遍歷時,每取得乙個數 排除0 1 如果將它所有的倍數 排除0 1 ...
leetcode 204 計數質數
統計所有小於非負整數 n 的質數的數量。示例 輸入 10輸出 4解釋 小於 10 的質數一共有 4 個,它們是 2,3,5,7 厄拉多塞篩法 西元前250年,希臘數學家厄拉多塞 eeatosthese 想到了乙個非常美妙的質數篩法,減少了逐一檢查每個數的的步驟,可以比較簡單的從一大堆數字之中,篩選出...