Мне нужна была общая реализация Trie в Haskell, но я не смог найти ее.Общая реализация Trie Haskell
Я был реализован my own functions (только ключи здесь, мне не нужны данные на Trie), но я хочу найти хорошую реализацию Trie в Haskell для будущего использования (я новичок в kokkeller).
Я был найден Data.Trie, но ключи ByteString.
Is Data.Trie правильный вариант? (а затем я не знаю, как его использовать)
Спасибо !!! : D
Невозможно написать три, которые работают с произвольными ключевыми типами. Какие ключи вы хотите использовать? Обратите внимание, что 'Data.IntMap' и' Data.IntSet' ставятся с клавишами 'Int'. –
C.A. McCann, Trie требуется только тип поддержки оператора Equality над последовательными исходными данными. С этим вы можете построить Trie. Что имеет значение, если вы не знаете базовый тип ?. Разве моя реализация не является Trie? Спасибо! (Но предположим, что тип ключа [a]) – josejuan
Правильно, вам нужны ключи, чтобы быть какой-то последовательностью или чем-то, что вы можете превратить в последовательность. Например, 'Data.IntMap' обрабатывает' Int' как последовательность бит. Уметь сортировать или индексировать непосредственно на каждом куске приятно, но список вещей, которые вы можете сравнить для равенства, достаточно. Во всяком случае, есть [пакет 'list-try' там] (http://hackage.haskell.org/package/list-tries), но он всегда казался мне немного запутанным. –