タグ

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

  • 関連タグはありません

タグの絞り込みを解除

algorithmsに関するmizuno_takaakiのブックマーク (4)

  • 高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」:CodeZine

    はじめに 大規模なデータを扱うアプリケーションでは、速度とともに作業領域量も大きな問題となります。作業領域がメインメモリに収まらない場合、スワッピングが発生し、大幅な速度低下につながります。そのため近年、データ構造は高速なだけでなく、作業領域量が小さいことも求められています。今回紹介するのは2003年に提案されたデータ構造、wavelet tree(以下「WT」と表記)です。WTは圧縮索引やSuccinct Data Structureなど、データをコンパクトに表現する際に重要なデータ構造です。WTは文字列T[0...n-1]が与えられた時、次の2つの操作を定数時間でサポートします。rank(p, c)――T[0...p]中のcの出現回数を返すselect(i, c)――(i+1)番目のcの位置を返す  WTの作業領域量は、文字列をそのまま保存した時の約2倍程度です。対象読者 C++の利用

  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 こんなことやって意味あるのかどうか正直言って迷いました。プログラマはたいてい知っているような内容だし見る人もいないんじゃないかと思いましたが、これからプログラミングを始めてみようという方にとっては参考になるかもしれないし、何よりも自分にとって頭の中を整理できたりするので、これから定期的にやっていこうかと考えてます。 ところで、紹介する内容はほとんど過去に出版された書物関係から抜粋しています。一応下の方に参考文献として挙げておきますので興味を持たれた方は書店などで探してみてはいかがでしょうか? ということで、まずはライン・ルーチン(画面に直線を描画する)についての紹介です。

  • きまぐれ日記: Bloom filter

    最近 Bloom filter というアルゴリズムを知りました。1970年に考案された古いアルゴリズムです。 http://en.wikipedia.org/wiki/Bloom_filter http://www.cs.wisc.edu/~cao/papers/summary-cache/node8.html#SECTION00053000000000000000 http://www.perl.com/pub/a/2004/04/08/bloom_filters.html Bloom filter は、キー(通常は文字列)の存在のみをコンパクトなデータ構造で高速に判定するためのアルゴリズムです。キーの存在のチェックでしたら通常の hash でいいのですが、コンパクトになるとは限りません。 Bloom filter は "false positive"、つまり「キーが存在していないのに存

  • Algosort - code-fetcher.com

    Welcome to computer programming algorithms directory. I am hoping to provide a comprehensive directory of web sites that detail algorithms for computer programming problems. Encryption Algorithms Advanced Encryption Standard (AES), Digital Signature Standard (DSS) [includes description of Digital Signature Algorithm (DSA)], Secure Hash Standard (SHS) – National Institute of Standards and Technolog

  • 1