ハスケルの汎用Trieの実装が必要でしたが、何も見つかりませんでした。Generic Trie Haskellの実装
私はmy own functionsを実装しました(ここではキーのみ、Trieではデータは必要ありませんでした)。私はHaskellでTrieを実装しています(私は新人のhaskellerです)。
Data.Trieが見つかりましたが、キーはByteStringです。
Data.Trieは正しいオプションですか? (そして、私はそれを使用する方法を知らない)
ありがとう!!! :D要求によってコメントから移動
任意のキータイプで動作するトライを書く方法はありません。どのキーを使用しますか? 'Data.IntMap'と' Data.IntSet'は 'Int'キーで試行されることに注意してください。 –
C.A. McCann、Trieは、シーケンスされたソースデータに対してEquality演算子をサポートする型だけが必要です。これで、あなたはTrieを構築することができます。基本的なタイプがわからない場合はどうなりますか?私の実装はTrieではありませんか?ありがとうございました! (ただし、キータイプは[a]とします) – josejuan
右のように、ある種のシーケンスか、シーケンスに変換できるものが必要です。例えば、 'Data.IntMap'は' Int'を一連のビットとして扱います。各チャンクで直接並べ替えたりインデックスを付けることができればいいですが、同等かどうかを比較することのできるリストがあれば十分です。とにかく、そこに[パッケージの 'list-tries'(http://hackage.haskell.org/package/list-tries)]がありますが、それはちょっと混乱しています。 –