- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我需要创建一个字典,其中键是字符串,值是对象。但我不希望 key 与用户提供的字符串完全匹配。相反,我想键包含字符串的一部分。让我举例说明
如果在键“Johnson”下的字典中有一个条目,我希望能够找到值给定输入字符串“John”、“Jo”。我还希望能够提取几个匹配的值按给定条件输入字符串。例如,如果有条目“John A”和“John B”我想要以具有像 FindFirst 这样的功能,它将迭代器返回到第一个匹配值。
理想情况下,我更愿意使用现有的 System.Collections.Generic.Dictionary可能派生一个新类并覆盖一些方法
最佳答案
我怀疑 SortedList<TKey, TValue>
在这里将是你最好的选择,它是一个基于二叉搜索树的字典。它的Keys
属性返回 IList<TKey>
访问时间为 O(1)。
你会获取 Keys
属性并执行二进制搜索以查找以您的搜索键开头的键。然后从该示例键向上和向下查找以找到实际匹配的键范围。这将提供 O(log n) 性能,而不是您通过查看所有键获得的 O(n) 性能。
虽然我不会从中推导 - 我会写一个有 SortedList<,>
的类型内部。
关于c# - 松散的字典,需要建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1859116/
我正在尝试在松散的 XAML 中使用 ResourceDictionary 并将其加载到运行时以向 WPF 应用程序提供模板和样式。我在本地目录中有可用的 XAML,并在应用启动时使用 URI 将新的
我正在尝试在松散的 XAML 中使用 ResourceDictionary 并将其加载到运行时以向 WPF 应用程序提供模板和样式。我在本地目录中提供了 XAML,并在应用程序启动时使用 URI 将新
下面这段代码会导致内存丢失,因为rA在构造时被初始化为无效。我什么时候可以解决这个问题? 使用 shared_ptr 还是希望 future 的编译器版本能够捕获这些错误代码? #include u
我有一个可扩展的UITableView,具有特定的单元格、页眉和页脚高度。当用户点击标题时,单元格开始显示在其下方(部分展开)。当用户再次点击时,部分会折叠。 我的问题是,当用户点击标题时,标题变为绿
我看过这个问题,没看出问题出在哪里。我不是 C++ 专家,所以对我来说这看起来还不错。我上次尝试时,这曾经毫无问题地编译。 namespace yaaf { /********************
问题陈述如下,假设你有一个包含三个元素的标题: ... ... ... Logo 和选项的绝对宽度分别为 220px 和 294px。元素布局安排是: .logo { float:left; } .s
我是一名优秀的程序员,十分优秀!