leetcode解題之計數質數

2021-10-02 20:48:00 字數 683 閱讀 2992

統計所有小於非負整數 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 想到了乙個非常美妙的質數篩法,減少了逐一檢查每個數的的步驟,可以比較簡單的從一大堆數字之中,篩選出...