У меня есть список из примерно 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, где ключом будет индекс массива, тогда, если объект был нулевым, продолжайте увеличивать указатель массива до тех пор, пока объект не будет найден, однако это приведет к малонаселенному массиву с 999 999 элементами:)
Спасибо