LeetCode Algorithm 204. 计数质数
生活随笔
收集整理的這篇文章主要介紹了
LeetCode Algorithm 204. 计数质数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
204. 計數質數
Ideas
質數的題目相對來說是個很經典的內容,雖然枚舉也可以解決,但是復雜度很高,所以決定用埃氏篩來實現。
埃氏篩的基本思想是:從2開始,將每個質數的倍數都標記成合數。
Code
Python
class Solution:def countPrimes(self, n: int) -> int:ans, isPrimer = 0, [True] * n # isPrimer 用于標記是否為質數for i in range(2, n):if isPrimer[i]:ans += 1for k in range(2, n):if i * k < n:isPrimer[i * k] = False # 將質數 i 的倍數都標記為合數else:breakreturn ans總結
以上是生活随笔為你收集整理的LeetCode Algorithm 204. 计数质数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2 0 2 0 年 第 十 一 届 蓝
- 下一篇: xdm,把我大学四年能用到的软件都分享给