普通筛法时间界的证明 普通筛法时间界 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) 证毕。