Самый эффективный код для первых 10000 простых чисел?

Я рекомендую сито, либо Sieve of Eratosthenes, либо faster Sieve of Atkin.

Решето или Эратосфен, вероятно, самый primes интуитивный метод поиска faster списка простых чисел. В основном performance вы:

  1. Запишите список чисел от 2 до любого желаемого предела, скажем, 1000.
  2. Возьмите первое незачеркнутое число (для первой итерации это 2) и вычеркните из списка все числа, кратные этому числу.
  3. Повторяйте шаг 2, пока не дойдете до конца списка. Все числа, которые не вычеркнуты, являются простыми.

Очевидно, что существует perfomance довольно много оптимизаций, которые performance-tuning могут ускорить работу этого algorithm алгоритма, но это основная slow идея.

Решето Аткина использует primes аналогичный подход, но, к efficiency сожалению, я недостаточно performance знаю о нем, чтобы объяснить primes его вам. Но я знаю, что алгоритм, который speed я привел, занимает 8 секунд, чтобы tuning вычислить все простые числа performance до 1000000000 на древнем perfomance Pentium II-350

Сито Эратосфена algorithms Исходный код: http://web.archive.org/web/20140705111241/http://primes.utm.edu/links/programs/sieves/Eratosthenes/C_source_code/

Решето Аткина perfomance Исходный код: http://cr.yp.to/primegen.html

performance

algorithm

primes

2022-11-09T22:57:42+00:00