Considere uma árvore Patricia construída para armazenar as s...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A questão aborda a construção de uma árvore Patricia, uma estrutura de dados eficiente para armazenamento e busca de chaves binárias. A altura da árvore resultante é o foco da pergunta, e a alternativa correta é a alternativa B.
Vamos entender o motivo pelo qual a alternativa B é a correta:
Árvore Patricia (ou árvore trie compactada) é uma variação das árvores trie, onde nós com apenas um filho são eliminados, resultando em uma estrutura mais compacta e eficiente. A árvore Patricia é utilizada principalmente em sistemas de busca de texto e compressão de dados.
Para construir a árvore Patricia com as chaves fornecidas (A = 011001, B = 110010, C = 100101, D = 001011, E = 011010, F = 110101), siga os seguintes passos:
- Comparar os bits das chaves e construir a árvore de acordo com as divergências encontradas.
- Inserir cada chave na árvore, bifurcando nos pontos de divergência.
Ao final, a altura da árvore será a maior profundidade de qualquer chave, considerando que a raiz está no nível zero. Com isso, obtemos:
A altura da árvore Patricia resultante é três (considerando a raiz no nível zero). Portanto, a alternativa correta é a B - três.
Agora, vamos justificar por que as outras alternativas estão incorretas:
A - dois: Uma altura de dois não é suficiente para acomodar todas as divergências entre as chaves fornecidas. Isso significa que haveriam chaves que não poderiam ser inseridas corretamente na árvore Patricia.
C - quatro: Uma altura de quatro é maior do que a necessária. A árvore Patricia compacta muitas das comparações, levando a uma altura menor.
D - cinco: Assim como a alternativa C, uma altura de cinco é maior do que a necessária para acomodar as chaves fornecidas.
E - seis: Novamente, uma altura de seis é desnecessariamente grande para a estrutura de dados resultante das chaves fornecidas.
Espero que esta explicação tenha esclarecido como a árvore Patricia é construída e por que a altura correta é três. Se você tiver mais dúvidas sobre o tema, estou à disposição para ajudar!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Gabarito, letra B
Primeiramente transforma os valores binários em decimais, para facilitar a visualização:
.........32........16........8.........4.........2..........1
A=.... 0.........1..........1.........0..........0..........1 = 25
B=....1..........1..........0.........0..........1..........0 = 50
C=....1..........0..........0.........1..........0..........1 = 37
D=....0..........0..........1.........0..........1..........1 = 11
E=....0..........1..........1.........0..........1..........0 = 26
F=....1..........1..........0.........1..........0..........1 = 53
Agora construímos a árvore onde os maiores valores são encaixados nas subárvores direita e os menores nas subárvores esquerdas, que fica:
......................................25........................................................ Raiz = 0
................................/........... \....................................................
.............................11 ............50 ...............................................altura = 1
........................................./............\...........................................
.....................................37...............53..................................... altura = 2
..................................../............................................................
.................................26........................................................... altura = 3
A altura de uma árvore é a distância de sua raiz (0) até a o seu nó folha (nó sem filhos) mais distante, no caso 3.
fonte: Estrutura de dados e seus algoritmos, Jayme Szwarcfiter. 3ª Ed.
instagram: @papirobizurado
Gabarito B
Excelente explicação do companheiro Irvin BM !
"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !
A inserção na árvore Patricia (Compressed Trie) é realizada a partir dos bits. Assim, após as duas primeiras inserções, a árvore fica:
...................................RAIZ....................................................... Raiz = 0
................................/........... \....................................................
.........................011001 ....110010 ............................................altura = 1
Isso porque pelo bit 0 a inserção ocorre à esquerda; pelo bit 1 à direita. A terceira inserção (100101) começa pelo bit 1. Assim ocorrerá a divisão do lado direito da árvore, que fica assim:
...................................RAIZ....................................................... Raiz = 0
................................/........... \....................................................
.........................011001..........1.................................................altura = 1
........................................./............\...........................................
...................................00101.....10010..................................... altura = 2
A árvore final fica da seguinte forma:
...................................RAIZ....................................................... Raiz = 0
............................/.................... \...............................................
...........................0......................1.............................................altura = 1
....................../..........\.........../............\.......................................
................01011......110....00101.......10................................... altura = 2
.............................../......\................./........\................................
.............................01......10..........010......101............................altura = 3
Força Guerreiro!!!!!!
Pessoal, como definimos qual será o nó raiz? E quantos números de filhos terá cada nó? Nso entendi.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo