タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

AlgorithmとClojureに関するrydotのブックマーク (1)

  • エラトステネスの無限の篩 - 水底で思うこと

    ♯エラトステネスの篩とは 一般にエラトステネスの篩(ふるい)というと求める素数の上限を決めてそれ以下の整数(2以上)から素数の倍数を消すことで素数を篩い出すアルゴリズムです。詳細はwikipediaに分かり易く書かかれていますのでそちらをどうぞ。 このエラトステネスの篩に上限をあたえず無限素数リスト作ってみようという試みです。 Clojure は遅延シーケンスにより無限長のリストを扱うことができます。無限素数リストをつくる例はWEB上でいくつも見られるのですが、エラトステネスの篩で書いているのは少ないのではないかと思います。 エラトステネスの篩といいつつも実は試し割りで素数を求めている例をちらほらと見掛けます。 剰余を求めるのは試し割りです。N 以下の素数で割ってみて余りが非ゼロのものを残す、というアルゴリズムはエラトステネスの篩ではないと思います。 ♯基方針 基方針としては、 2以上

    エラトステネスの無限の篩 - 水底で思うこと
  • 1