Darts: Double ARray Trie System

Last update: $Id: index.html,v 1.4 2001/05/21 18:41:39 taku-ku Exp $;


はじめに

Darts は, Double Array [Aoe 1989]を構築するための シ ンプルな C++ Template Library です. DoubleArray は Trie を表現する ためのデータ構造で, 文字列からポインタ(整数)への写像を格納します. 検索速度は, 検索する文字列の長さのみにに依存し, 非常に高速です. オリジナル の Double Array は, 動的に key の追加削除を行えるような 枠組ですが, Darts は ソート済の辞書を一括して Double Array に変換することに機能を絞っています.

Exact match はもちろん, Common Prefix Search を非常に高速に行うことができます. 形態素解析器の辞書に用いるとかなりの高速化に繋がります.

また, ソースも 400行程度と非常にコンパクトなので, Double Array の構築アルゴリズムや 検索アルゴリズムの勉強にも良い教材だと思います. 他の言語への移植もそう難 しくないでしょう.

新着情報

使い方

Darts は, darts.h を提供するのみの, C++ Template Library です. そのつど include して使用します.
inline 化による高速性を期待して, このような配布形態にしています.

サンプルプログラミング

付属プログラムの説明

既知の問題

ダウンロード

Darts は GNU Lesser General Public Licenseに従ったフリーソフトウェアです.

インストール

TODO

参考文献, リンク


$Id: index.html,v 1.4 2001/05/21 18:41:39 taku-ku Exp $;

taku-ku@is.aist-nara.ac.jp