мне нужно вести список чисел, считать до 100 000 ...
, если данные (например)
1, 4, 9, 12, 20, 35, 52, 77, 91
и язапросить число, скажем, 27, я хочу, чтобы число, непосредственно предшествующее 27, было доступно в списке, так что это будет: 20
данные также будут часто изменяться, например, множество вставок истирает.
в настоящее время я использую stl::set
в сочетании с
set<int>iterator it = lower_bound(values.begin(), values.end(), n);
так
*it = 35
и с it--
, я получаю20 ... но это не достаточно быстро, число запросов большое, до 500 000 ... которые включают изменение моих значений или поиск значения.
, пожалуйста, дайте мне несколько указателей.