62
Algoritmos - Teoria e Prática - 3ª Ed. 2012

Exercícios resolvidos: Algoritmos - Teoria e Prática - 3ª Ed. 2012

Thomas Cormen IBSN: 9788535236996

Elaborado por professores e especialistas

Passo 1 de 6keyboard_arrow_downkeyboard_arrow_up

Existem 4 casos tratados dentro do algoritmo RB-DELETE-FIXUP:

- O irmão de , o nó , é vermelho.

- O irmão de , o nó , é preto, e ambos os filhos de são pretos.

- O irmão de , o nó , é preto, o filho esquerdo de é vermelho e o filho direito é preto.

- O irmão de , o nó , é preto, e o filho direito de é vermelho.

Passo 2 de 6keyboard_arrow_downkeyboard_arrow_up

No primeiro caso citado acima, o algoritmo troca a cor do nó com o pai de e efetua uma rotação para a esquerda em . Assim o novo irmão de , que é um dos filhos de antes da rotação, agora é preto. Isso leva para um dos outros casos.

Passo 3 de 6keyboard_arrow_downkeyboard_arrow_up

No segundo caso, o laço while termina com como nova raiz da subárvore, que depois é colorida de preto.

Passo 4 de 6keyboard_arrow_downkeyboard_arrow_up

No terceiro caso, citado acima, o algoritmo troca a cor do nó com seu filho esquerdo, e efetua uma rotação para a direita em . Assim passa a ser um nó preto com filho direito vermelho, o que o transforma no quarto caso.

Passo 5 de 6keyboard_arrow_downkeyboard_arrow_up

No quarto caso, o algoritmo efetua algumas trocas de cor e uma rotação para a esquerda no pai de , removendo o preto extra de e transformando na raiz da árvore, que é preta.

Passo 6 de 6keyboard_arrow_downkeyboard_arrow_up

Portanto, após a execução de RB-DELETE-FIXUP, a raiz da árvore deve ser preta.

Navegar por capítulo