ウェーブレット木のライブラリshellinfordを作ったので公開しておく
ついかっとなってウェーブレット木のライブラリを作ってみた。せっかくなので公開しておく。LOUDSはerika-trieを作ったので今度はウェーブレット木を作りたかった。
ライブラリ名はおおかたの予想を裏切りshellinford。かびーん。
なお、ウェーブレット木で用いている簡潔ビットベクトルは前回のDSIRNLPで発表したものの公開していなかった「少ない労力でそこそこいけてるビットベクトル」を使っている。
shellinford - shellinford: succinct document retrieval library - Google Project Hosting
DSIRNLP#2で発表しました「作ろう!簡潔ビットベクトル」 - EchizenBlog-Zwei
まずソースコードを取ってきてインスト。
$$ svn checkout https://shellinford.googlecode.com/svn/trunk/ shellinford $$ cd shellinford/src $$ make $$ make install $$ cd ..
サンプルとしてBWT(Burrows-Wheeler Transform, BW変換)のコードが付属している。
$$ cd sample $$ make $$ ./bwt mississippi # 変換前 ipssm$pissii # 変換後 $$ ./rbwt ipssm$pissii # 逆変換前 mississippi # 逆変換後
というわけで今後はこのshellinfordを使ってFM-Indexとか2D-Searchとかを実装していく予定。