Skip to content

Commit d876146

Browse files
Refactor optimized_sieve function for clarity
1 parent c9baa24 commit d876146

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

maths/optimised_sieve_of_eratosthenes.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,14 @@ def optimized_sieve(limit: int) -> list[int]:
3737
[2]
3838
>>> optimized_sieve(30)
3939
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
40+
>>> optimized_sieve(0)
41+
[]
4042
"""
4143
if limit < 2:
4244
return []
4345

44-
# Handle 2 separately, then consider only odd numbers
45-
primes = [2] if limit >= 2 else []
46+
# Handle 2 separately
47+
primes = [2]
4648

4749
# Only odd numbers from 3 to limit
4850
size = (limit - 1) // 2
@@ -62,4 +64,7 @@ def optimized_sieve(limit: int) -> list[int]:
6264

6365

6466
if __name__ == "__main__":
67+
import doctest
68+
69+
doctest.testmod()
6570
print(optimized_sieve(50))

0 commit comments

Comments
 (0)