Em Python, uma lista encadeada pode ser implementada usando uma classe para os nós e outra para a lista encadeada em si. Cada nó da lista contém um valor e uma referência ao próximo nó. Considerando a implementação de uma lista encadeada simples em Python, qual das seguintes opções melhor descreve como um novo elemento é adicionado ao final da lista? Assinale a alternativa correta.
Questão
Em Python, uma lista encadeada pode ser implementada usando uma classe para os nós e outra para a lista encadeada em si. Cada nó da lista contém um valor e uma referência ao próximo nó. Considerando a implementação de uma lista encadeada simples em Python, qual das seguintes opções melhor descreve como um novo elemento é adicionado ao final da lista? Assinale a alternativa correta.
Alternativas
O novo elemento é adicionado diretamente ao final da lista, sem necessidade de percorrer os nós existentes.
O novo elemento substitui o primeiro elemento da lista, e o antigo primeiro elemento torna-se o segundo.
A lista é percorrida do início ao fim, e o novo elemento é conectado ao último nó, que anteriormente apontava para nulo.
O novo elemento é inserido em uma posição aleatória da lista.
Listas encadeadas em Python não permitem a adição de novos elementos.
Explicação
Em uma lista encadeada simples, cada nó tem um valor e uma referência para o próximo nó (por exemplo, next). Para adicionar um novo elemento ao final:
- Cria-se um novo nó, cujo
nextinicialmente aponta para nulo (em Python,None). - Se a lista estiver vazia (cabeça/
headéNone), o novo nó passa a ser o primeiro nó. - Caso contrário, é necessário percorrer a lista a partir do
headaté encontrar o último nó (aquele cujonext is None). - Atualiza-se o
nextdo último nó para apontar para o novo nó.
Isso corresponde exatamente à alternativa que diz que a lista é percorrida e o novo elemento é conectado ao último nó, que antes apontava para nulo (None).
Alternativa correta: (C).
Travou em outra questão? A gente resolve.
Crie sua conta grátis e resolva 3 questões por dia com explicação passo a passo, por texto ou foto.