The Sieve of Eratosthenes is an algorithm for finding all prime numbers up to some limit n.
It is attributed to Eratosthenes of Cyrene, an ancient Greek mathematician.
n + 1 positions (to represent the numbers 0 through n)0 and 1 to false, and the rest to truep = 2 (the first prime number)false all the multiples of p (that is, positions 2 * p, 3 * p, 4 * p… until you reach the end of the array)p that is true in the array. If there is no such position, stop. Otherwise, let p equal this new number (which is the next prime), and repeat from step 4When the algorithm terminates, the numbers remaining true in the array are all
the primes below n.
An improvement of this algorithm is, in step 4, start marking multiples
of p from p * p, and not from 2 * p. The reason why this works is because,
at that point, smaller multiples of p will have already been marked false.

The algorithm has a complexity of O(n log(log n)).