Java-реализация IntervalTree DeleteNode
Мне нуженIntervalTree или реализация RangeTree в Java, и у меня возникли проблемы с поиском такой с работающей поддержкой удаления.
Там'встроенный вsun.jvm.hotspot.utilities.IntervalTree, ноdeleteNode метод в суперклассе RBTree гласит:
/**
* FIXME: this does not work properly yet for augmented red-black
* trees since it doesn't update nodes. Need to figure out exactly
* from which points we need to propagate updates upwards.
*/
Попытка удалить узлы из дерева приводит к исключению:
Узел'Максимальная конечная точка s не была обновлена должным образом
Насколько сложно было бы правильно реализоватьdelete
функциональность в подклассе sun.jvm.hotspot.utilities.IntervalTree? Или есть другая реализация Interval Tree, которая уже реализует это правильно?
В настоящее время я 'я просто вытираю дерево и заново заселяю его каждый раз тамЭто удаление, которое далеко от идеала (примечание: установка DEBUGGING = false в RBTree значительно ускорила процесс).