我一直在使用与this question相关的Haskell Data.Trie模块,并且想知道是否有人可能知道/建议返回的方法,而不是匹配的子图,而不是匹配的子图匹配前缀。在下面的示例中,对于[0,1]
,我希望[1,1]
和[1,0,1]
;对于[1]
,null。
我的想法可能没有我想要的那么高效 - 比如寻找与普通子树不相交的键。
Prelude Data.Trie...> let t=Data.Trie.fromList [(pack [1,1],3),(pack [1,0,1],5)]
Prelude Data.Trie...> Data.Trie.submap (pack [0,1]) t
Data.Trie.fromList []
Prelude Data.Trie...> Data.Trie.submap (pack [1]) t
Data.Trie.fromList [("\SOH\NUL\SOH",5),("\SOH\SOH",3)]