← Questões de Algoritmos e Estrutura de Dados

Algoritmos e Estrutura de Dados · FGV · 2021

Questão comentada de Algoritmos e Estrutura de Dados

Considere a lista duplamente encadeada exibida a seguir. (1, 3, 0, “Verde”) (2, 4, 3, “Azul”) (3, 2, 1, “Amarelo”) (4, 0, 2, “Vermelho”) Cada elemento pertencente à lista é representado por uma quádrupla, com o seguinte formato: (<id>, <id do anterior>, <id do seguinte>, <conteúdo>). A ordem do conteúdo dos componentes, segundo a instância da lista apresentada, é:

Gabarito: E

Em uma lista duplamente encadeada, cada nó guarda quem vem antes e quem vem depois. Então, para descobrir a ordem dos elementos, o caminho mais seguro é procurar o nó inicial, que normalmente tem o campo do anterior igual a 0 ou nulo. Aqui, esse papel é do elemento 4, porque ele aponta para anterior = 0, ou seja, não tem ninguém antes dele. A partir daí, você segue pelo campo "seguinte": 4 aponta para 2, 2 aponta para 3, e 3 aponta para 1. Traduzindo os conteúdos: Vermelho, Azul, Amarelo, Verde. É como seguir placas de trânsito, sem inventar atalhos. O erro clássico é olhar apenas os números dos ids ou tentar ordenar pela posição do enunciado. Em estrutura de dados, o que manda é o encadeamento entre os nós, não a ordem em que eles foram escritos. A questão quer exatamente a sequência obtida percorrendo a lista pelo ponteiro do próximo. Por isso, o gabarito é a alternativa E. Ela reproduz a ordem correta dos conteúdos ao seguir o nó inicial até o fim da lista.

Continue treinando

Questões relacionadas