普通筛法时间界的证明
生活随笔
收集整理的這篇文章主要介紹了
普通筛法时间界的证明
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
普通篩法時間界 O(nlnlnn) 的證明
定義
樸素素數篩法即是利用每一個素數篩出所有他的倍數。
證明
對于待篩選的最大數n,由于素數分布定理,其中的素數個數約等于 nlnn,第i個素數約為 ilni。則算法總的運行次數為:
∑i=1nlnnnilni=n∑i=1nlnn1ilni…(1)
(為了方便,計 ln1=1 )
考慮對
∑i=1nlnn1ilni…(2)
用積分估值。有:
∑i=1nlnn1ilni=O(∫nlnn21ilni?di)…(3)
由微積分基本定理:
(3)=O(F(nlnn))…(4)F(x)=∫1ilni?di=lnlni
因而:
(2)=(4)=O(lnlnnlnn)=O(lnlnn?lnlnlnn)=O(lnlnn)
所以:
(1)=O(nlnlnn)
證畢。
轉載于:https://www.cnblogs.com/ljt12138/p/6684356.html
總結
以上是生活随笔為你收集整理的普通筛法时间界的证明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql主键异常(冲突)
- 下一篇: 耳机电声测试仪软件,杭州爱华 AWA61