Этот алгоритм исправления вставки красно-черного дерева неполон?

Я читаю Введение в алгоритмы, 3-е издание (ISBN-10: 9780262033848), и в нем описан следующий алгоритм «исправления» красно-черного дерева после вставки красного узла.

введите здесь описание изображения

В строке 3 говорится, что для y = установлено значение «правый дочерний элемент родителя z» (правый дядя z). Мой вопрос: что, если z - это только третья вставка, и это левый дочерний элемент левого дочернего элемента? Разве не нужен был бы другой случай, когда z не имеет правого дяди, а его родительский элемент является красным левым дочерним элементом?

   gp (blck)
   /
  p (red)
 /
z (red)

person SelfStudy22    schedule 05.11.2019    source источник


Ответы (1)


О третьем случае уже позаботились строки 12–14.

Взгляните на следующее изображение, которое объясняет ваш случай:

введите здесь описание изображения

Не стесняйтесь задавать любые сомнения

person Deepak Tatyaji Ahire    schedule 06.11.2019
comment
@DavidMakogon Не могли бы вы показать мне случай, когда я внес какие-либо бесполезные изменения. - person Deepak Tatyaji Ahire; 06.11.2019
comment
@DavidMakogon, сэр, спасибо за ваше предложение. Позаботится. Кстати, приятно с вами поговорить. Я тоже работаю в Microsoft. Ваш профиль вдохновляет. Также прокомментируйте или проголосуйте за мой ответ, если вы сочтете это полезным. Новичку важно получать такие предложения от пожилых людей. - person Deepak Tatyaji Ahire; 06.11.2019
comment
Когда я задавал вопрос, я не понимал, что нулевые узлы считаются черными. Спасибо за помощь. - person SelfStudy22; 07.11.2019
comment
@ SelfStudy22, добро пожаловать! - person Deepak Tatyaji Ahire; 07.11.2019