ウェーブレットツリー:シーケンスに対するランククエリへのエレガントなアプローチ
2025-05-15

このブログ投稿では、大きなアルファベットを持つシーケンスに対するランククエリに答えるためのエレガントなデータ構造であるウェーブレットツリーを紹介します。O(log₂A)(Aはアルファベットのサイズ)の時間計算量を実現し、文字列をビットベクトルの階層に整理します。この投稿では、ウェーブレットツリーの構築とクエリについて詳しく説明し、圧縮と速度のためにRRR構造やその他のバイナリランクインデックスを使用する最適化手法を強調しています。実際的な用途には、Francisco ClaudeのCompressed Data Structure Library(libcds)の実装が推奨されます。
開発