Если мне дают определенный набор чисел (которые для простоты я храню в сбалансированном бинарном дереве поиска), то я хочу ответить на запрос, который требует от меня сообщить, какое это наименьшее число между [A, B]Какой бы быстрый алгоритм для выполнения этой задачи?
Технически я мог бы пройти по дереву от корня в поисках A (или числа, которое больше, чем если A не присутствует), чем при возврате в поисках B (или число меньше, чем B), и при этом я мог сохранить счетчик для i, чтобы определить, когда я буду на i-м номере.Но это не кажется мне оптимальным.
Можно ли выполнить эту операцию для O (log n), высоты дерева, которое я использую для хранения универсального набора чисел?
Спасибо