Підтримка
www.wikidata.uk-ua.nina.az
Resheto Eratosfe na v matematici prostij starodavnij algoritm znahodzhennya vsih prostih chisel menshih deyakogo cilogo chisla n displaystyle n sho buv stvorenij davnogreckim matematikom Eratosfenom MetodYaksho potribno znajti vsi prosti chisla menshi za pevne chislo N vipisuyutsya vsi chisla vid 2 do N Pershe proste chislo dva Vikreslimo vsi chisla bilshi dvoh yaki dilyatsya na dva 4 6 8 Nastupne chislo yake zalishilosya nezakreslenim tri ye prostim Vikreslyuyemo vsi chisla bilshi troh ta kratni trom 6 9 Nastupne nezakreslene chislo p yat ye prostim Vikreslimo vsi chisla bilshi p yati ta kratni p yati 10 15 20 25 Povtoryuyemo operaciyu poki ne bude dosyagnuto chislo N Nastupne nezakreslene chislo ye prostim Vikreslimo vsi chisla bilshi nogo ta kratni jomu Chisla yaki zalishilisya nezakreslenimi pislya ciyeyi proceduri prosti Vikreslyuvati kratni dlya kozhnogo prostogo p mozhna rozpochinayuchi z p2 a ne z 2p Tobto kratni trom vikreslyuyut pochinayuchi z 32 9 oskilki 6 uzhe vikresleno yak kratne dvom kratni p yati vikreslyuyut pochinayuchi z 25 52 chisla 10 15 20 uzhe vikresleno bo voni kratni dvom abo trom kratni semi pochinayut vikreslyuvati z 49 oskilki 14 21 28 35 i 42 vzhe vikresleno yak kratni dvom trom chi p yati i t d Ocinka skladnostiAlgoritm potrebuye O N displaystyle O N bit pam yati ta O N log log N displaystyle O N log log N matematichnih operacij PrikladZapishemo naturalni chisla vid 2 do 20 v ryadok 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Pershe chislo v ryadku 2 proste Vikreslimo vsi chisla kratni 2 kozhne druge pochinayuchi z 2 2 4 displaystyle 2 2 4 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Nastupne nezakreslene chislo 3 proste Vikreslimo vsi chisla kratni 3 kozhne tretye pochinayuchi z 3 2 9 displaystyle 3 2 9 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Nastupne nezakreslene chislo 5 proste Vikreslimo vsi chisla kratni 5 kozhne p yate pochinayuchi z 5 2 25 displaystyle 5 2 25 I t d Neobhidno vikresliti kratni dlya vsih prostih chisel p displaystyle p dlya yakih p 2 n displaystyle p 2 leq n V rezultati vsi skladeni chisla budut vikresleni a zalishatsya vsi prosti chisla Dlya n 20 displaystyle n 20 vzhe pislya vikreslyuvannya kratnih chislu 3 vsi skladeni chisla viyavlyayutsya vikreslenimi Realizaciya algoritmu resheta EratosfenaPsevdokod Resheto Eratosfena mozhe buti virazhene v psevdokodi nastupnim chinom Algoritm Resheto Eratosfena ye vhid cile chislo n gt 1 vihid vsi prosti chisla vid 2 do n nehaj A masiv bulevih znachen indeksovanih cilim chislom s vid 2 do n inicializuyemo ves masiv znachennyami true dlya i 2 3 4 sho ne perevishuye n robiti yaksho A i ye true dlya j i2 i2 i i2 2i i2 3i sho ne perevishuye n robiti A j false povernuti vsi i de A i ye true Cej algoritm vidaye vsi prosti chisla sho ne perevishuyut n Vin vklyuchaye zagalnu optimizaciyu yaka polyagaye v tomu shob pochati pererahovuvati chisla kratni kozhnomu prostomu i z i2 Chasova skladnist cogo algoritmu stanovit O n log log n pri standartnomu pripushenni sho onovlennya masivu vidbuvayetsya za chas O 1 Python Realizaciya movoyu Python import math N 1000000 diapazon v yakomu shukayemo prosti chisla prime True N prime 0 prime 1 False False 0 ta 1 ne ye prostimi for i in range 2 math ceil math sqrt N vid 2 do kvadratnogo korenya z N if prime i yaksho proste vidalyayemo vsi chisla kratni do nogo j i i dlya i 2 j budut taki znachennya 4 6 8 10 12 dlya i 3 j 9 12 15 18 21 while j lt N prime j False j iDiv takozhResheto Sundarama Resheto AtkinaDzherelaWeisstein Eric W Sieve of Eratosthenes angl na sajti Wolfram MathWorld Jonathan Sorenson An Introduction to Prime Number Sieves Computer Sciences Technical Report 909 Department of Computer Sciences University of Wisconsin Madison January 2 1990 the use of optimization of starting from squares and thus using only the numbers whose square is below the upper limit is shown Sedgewick Robert 1992 Algorithms in C Addison Wesley ISBN 978 0 201 51059 1 p 16
Топ