使用.NET StringDictionary通过列表/字典进行前缀搜索?

Mat*_*els 2 c# string search prefix

我想知道.NET是否提供了通过列表或字典对象进行前缀搜索的任何标准功能.我遇到了StringDictionary,但无法弄清楚它是否能为我做到这一点.

如果它可以进行前缀搜索,它是否也可以进行子串搜索或者让我使用正则表达式进行搜索?

提前致谢.

jas*_*son 5

StringDictionary仅仅是一个哈希表,键和值是strings.这在仿制药之前存在(当时Dictionary<string, string>不可能).

您想要的数据结构是trie.CodeProject上有实现:

  1. 使用TRIE实现电话目录
  2. 在C#2.0中使用泛型的可重用前缀树

或者,如果你是那种人,请自己动手(参见CLRS).