> что хуже ("всего" в 1.55 раз) Эратосфена вычеркивания с объединением
Р.Хюи, соавтор (вместе с К.Айверсоном) и главный разработчик языка J,
наследника APL, считает, что разницу в скорости меньше чем в два раза
не следует считать разностью. И действительно, она вполне может быть
вызвана не
День добрый, всем!
> Прошу прощения за некропостинг, но на письмо отвечу.
> Я остановился на 40 000, поскольку решето Эратосфена на Рефале
> оказалось сильно медленным, и его время растёт нелинейно от длины
> исходного списка. Причём, мне показалось, что даже квадратично.
> Поэтому результата в
,
Александр Коновалов
From: Arkady Klimov arkady.klimov_AT_gmail.com [mailto:refal@botik.ru]
Sent: Thursday, October 10, 2019 4:50 PM
To: refal@botik.ru
Subject: Re: Список всех простых чисел
Александр, а можно попросить вас пропустить вариант для 176100 вместо 4 -
тогда результаты
Добрый день!
Прошу прощения, продолжу оффтоп про Хаскель.
Два небольших соображения:
1) primesA сильно быстрее, чем primesE, за счёт прыжков до следующего
квадрата. Если это реализовать для primesE, то разница в производительности
между ними уже не такая драматическая:
primesE2 = sieve [2..] 4
> Мог ошибиться в границах, но смысл должен быть понятен: каждая
> следующая граница (lim) получается из предыдущей примерно
> возведением в квадрат, так ведь?
Так, так, именно!
> Поколение - то, что выходит после очередной фильтрации как кусок
> списка простых и служит сомножителями в следующем
чт, 10 окт. 2019 г. в 18:32, Sergei M. Abramov abram_AT_botik.ru <
refal@botik.ru>:
> День добрый, всем!
>
> > То есть для последнего "поколения" эта работа лишняя.
>
> А что такое последнее поколение, если я строю список всех простых
> чисел?
>
&g
>> То есть для последнего "поколения" эта работа лишняя.
Про поколения.
Замечу, что если взять несколько первых простых чисел p1...pK, их
произведение pp и профильтровать (\ k -> (gcd pp k) == 1) весь
бесконечный список [(pk+1).. ], то результат фильтрации имеет очень
простое, эффективное,
On Thu, Oct 10, 2019 at 6:32 PM Sergei M. Abramov abram_AT_botik.ru <
refal@botik.ru> wrote:
>
> Вот, хочу сказать, что меня удивило:
>
> ns' = filter (\ k -> (gcd pp k) == 1) ns
>
> работает немного медленнее, чем
>
> ns' = filter ((== 1).(gcd pp)) ns
>
> Вот нифига ж себе?
>
В
День добрый, всем!
> То есть для последнего "поколения" эта работа лишняя.
А что такое последнее поколение, если я строю список всех простых
чисел?
> Наверно, лучше накапливать в виде списка, а при подаче на Filter
> для следующего шага все перемножить.
> Интересно
t;
> С уважением,
> Александр Коновалов
>
>
>
> -Original Message-
> From: Sergei M. Abramov abram_AT_botik.ru
> Sent: Tuesday, October 8, 2019 10:29 PM
> To: refal@botik.ru
> Subject: Список всех простых чисел
>
>
>
> День добрый, всем!
>
>
>
>
-Original Message-
From: Sergei M. Abramov abram_AT_botik.ru
Sent: Tuesday, October 8, 2019 10:29 PM
To: refal@botik.ru
Subject: Список всех простых чисел
День добрый, всем!
Простите, что не про Рефал. Просто не могу вспомнить то, что (как мне
помнится) случилось в обстановке рефал-компании
День добрый, всем!
Простите, что не про Рефал. Просто не могу вспомнить то, что (как мне
помнится) случилось в обстабовке рефал-компании на заре моей
профессиональной деятельности (практика в НИЦЭВТе или работа в нем).
По каким-то причинам я задумался тогда над построением списка всех
простых
12 matches
Mail list logo