给定一个文本,它被分成一个单词列表,我想查找单词词典中的每个单词,这也是从文本文件中读取的,并且split('\n')
。python:快速词典查找通配符*
而不是检查每个单词是否包含在字典中(这是令人毛骨悚然的慢)我需要选择基于通配符的元素列表*('*'在最后,即不需要permuterm解决方案)。例如,解决方案应该选择以'dep'开头的所有字典元素,而不必遍历整个字典列表。
在这种情况下,性能是至关重要的。我虽然B树的...但
- 什么是最佳的解决方案和数据类型Python中的快速实现。
- 请提供代码示例
好像你需要一些[trie](http://en.wikipedia.org/wiki/Trie)包 – Voo
通配符的东西肯定会慢一些。字典使用散列(访问时间不变)。 – JBernardo
@JBernardo:不,它只是意味着元素必须以'星'之前的任何东西开始 –