【发布时间】:2011-03-27 22:19:04
【问题描述】:
我有一个大约 4000 个数字的列表,例如:{10, 20, 30, 40, 50,...}
每个数字都是NSDictionary 中的一个键,因此我可以获取与数字关联的对象,例如
[NSDictionary objectForKey:[NSNumber numberWithInt:20];
但是,如果键不在字典中,我想找到最近的键(假设值之间存在有意义的关系,在我的示例中为 10>20>30 等)。
例如
[NSDictionary objectForKey:[NSNumberWithInt:19]] would return the value for key:20.
或者是否有其他更适合这样做的数据结构?我曾想过使用排序的 NSArray,其中键是数组索引,然后如果 object 为 null,则继续递增数组指针直到找到该对象,但这将导致一个包含 999,999 个元素的稀疏填充数组 :)
谢谢
【问题讨论】: