Мое требование состоит в том, чтобы иметь возможность быстро получить минимальное и максимальное значение в дереве. (Обратите внимание, не ключ минимум/максимум, а минимум/максимум спутниковых данных).
Дерево будет основано на строках в качестве ключей, и каждый узел будет хранить с ним целое число. Это целое число должно меняться и постоянно обновляться. Ключи остаются фиксированными
Я рассматривал возможность использования подхода, описанного здесь, для увеличения красно-черного дерево, так что каждый узел хранит максимум (максимум левого максимума и правого максимума и самого себя), аналогичный минимуму.
Поэтому, когда я обновляю узел, я просто обновляю минимум/максимум каждого узла, который был пройден, чтобы достичь моего текущего узла.
Что было бы лучшим подходом, чтобы избежать переписывания реализации STL красного/черного дерева.
boost
мультииндексный контейнер? - person Yakk - Adam Nevraumont   schedule 19.01.2014