При работе со структурой данных вы должны задать себе вопрос: «Что такое инварианты?»Для дерева B + некоторые из инвариантов:
- Записи хранятся в конечных узлах,
- Конечные узлы должны быть заполнены как минимум наполовину.
Так что, если вы решите, что деревья B + позволяют вам хранить ключи, которые больше не соответствуют записям, это нормально.Просто убедитесь, что ваши алгоритмы вставки и поиска все еще работают, учитывая ваш конкретный набор инвариантов.
В общем, несколько странно встретить ключ в любом виде дерева, который не соответствует ни одной из записей.Я также ожидал бы, что стоимость исправления в дереве B + с большим разветвлением будет довольно небольшой.