【发布时间】:2008-11-11 13:15:51
【问题描述】:
我需要一种算法来存储键/值对,其中键是 Int64。我目前正在使用排序的 IntList(与 TStringList 相同,但存储 int64)。这给了我 O(log n) 的搜索、插入和删除操作。由于我不需要排序的项目,这有点低效。我需要某种用于 O(1) 操作的哈希表。问题是我能找到的大多数实现都假设键是一个字符串。现在我显然可以将 Int64 键转换为字符串,但这似乎很浪费。有什么想法吗?
我不知道输入数据结构之前的项目数。
我还应该补充一点,我已经在 .net 中使用 Dictionary 实现了相同的组件,并且它添加的项目在 .net 版本中要快得多。设置好数据结构后,比较起来,遍历和检索并没有那么糟糕,但是插入让我很头疼。
【问题讨论】:
标签: algorithm delphi data-structures