Gönderen Vikipedi:
Algoritmanın karmaşıklığı
O(n(logn)(loglogn))
bit işlemlerdir.
Buna nasıl ulaşırsınız?
Karmaşıklığın bu loglogn
terimi içermesi bana bir yer olduğunu söylüyor sqrt(n)
.
n = 100
Numaraları bileşik olarak işaretlemenin sabit zaman mark_composite()
alacağını varsayarsak (dizi uygulaması), eleği ilk 100 sayı ( ) üzerinde çalıştırdığımı varsayalım , kullandığımız sayının
n/2 + n/3 + n/5 + n/7 + ... + n/97 = O(n^2)
Ve sonraki asal sayıyı bulmak için (örneğin 7
, katları olan tüm sayıların üstünü çizdikten sonra atlamak 5
), işlem sayısı olacaktır O(n)
.
Yani karmaşıklık olur O(n^3)
. Katılıyor musun?