我想知道 .NET 是否提供任何标准功能来通过列表或字典对象进行前缀搜索。我遇到了StringDictionary
,但不知道它是否可以为我做到这一点。
如果它可以进行前缀搜索,它也可以进行子字符串搜索或让我使用正则表达式之类的东西进行搜索吗?
提前致谢。
StringDictionary
只是一个哈希表,其中的键和值是string
是。这在泛型之前就存在(当Dictionary<string, string>
是不可能的)。
您在这里想要的数据结构是trie http://en.wikipedia.org/wiki/Trie。有实现代码项目 http://www.codeproject.com/:
- 使用 TRIE 实现电话目录 http://www.codeproject.com/KB/recipes/PhoneDirectory.aspx
- 在 C# 2.0 中使用泛型的可重用前缀树 http://www.codeproject.com/KB/recipes/prefixtree.aspx
或者,如果你是那种人,那就自己动手(参见CLRS http://en.wikipedia.org/wiki/Introduction_to_Algorithms).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)