Em pseudocódigo, qual é o caso base adequado para um algoritmo recursivo que verifica se uma lista L é…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em pseudocódigo, qual é o caso base adequado para um algoritmo recursivo que verifica se uma lista L é palíndroma (mesma sequência lida em ambas direções)?
- A) O caso base deve retornar falso se a lista tiver um elemento.
- B) O caso base deve apenas verificar se a lista tem dois elementos.
- C) A lista deve ter pelo menos três elementos para ser verificada.
- D) Se L está vazia ou tem um elemento, retornar verdadeiro.
- E) O algoritmo deve sempre retornar verdadeiro independente do conteúdo da lista.
✅ Resposta correta: alternativa D
Resolução passo a passo
- Uma lista é palíndroma quando a sequência é a mesma lida do início ao fim e do fim ao início. Passo 2: Na recursão, comparamos o primeiro e o último elementos de L; se forem iguais, repetimos o processo para a lista formada pelo miolo, isto é, L sem os extremos. Passo 3: O caso base é o ponto em que a recursão para sem precisar de novas comparações. Se L está vazia ou tem um único elemento, não existe par de extremos diferentes para comparar, então a lista é palíndroma e a função retorna verdadeiro. Passo 4: Por isso a alternativa D está correta. Passo 5: A alternativa A está errada porque uma lista com um elemento é trivialmente palíndroma, não o contrário. Passo 6: A alternativa B está errada porque exigir exatamente dois elementos deixa sem tratamento as listas vazias e as de tamanho ímpar, que chegam ao fim da recursão com um único elemento no meio. Passo 7: A alternativa C está errada porque não há exigência de três elementos; listas com zero, um ou dois elementos também devem ser tratadas corretamente. Passo 8: A alternativa E está errada porque o resultado depende do conteúdo: a lista ['a','b'] não é palíndroma, por exemplo.
💡 Dica: Considere as características de uma lista palíndroma.
Alternativa por alternativa
Acredita que uma lista com um único elemento não pode ser palíndroma, quando na verdade ela é lida igual nos dois sentidos.
Acha que o caso base precisa ser exatamente uma lista com dois elementos, sem perceber que listas vazias e de tamanho ímpar também precisam de tratamento para encerrar a recursão.
Por que engana: O aluno pode confundir o caso base correto, acreditando que listas com um ou dois elementos não podem ser palíndromas.
Supõe que só listas com pelo menos três elementos fazem sentido para a verificação, quando listas menores também são casos válidos e devem ser tratadas pelo caso base.
Listas vazias ou unitárias são palíndromos por definição; esse caso base garante término da recursão antes de comparar pares de extremos.
Entende que palíndromo é qualquer lista, sem ler a definição de que a sequência deve ser igual nos dois sentidos, o que faz o resultado depender do conteúdo.
Raio-X da questão
algoritmo recursivo
avaliacao
algoritmo recursivo · estrutura de listas
Revisar os conceitos de recursão e palíndromos.
O aluno pode confundir o caso base correto, acreditando que listas com um ou dois elementos não podem ser palíndromas.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Pesquisadores acompanham há três anos o avanço de resíduos flutuantes em um trecho de rio urbano. Em uma simulação para…
- — O caminhão não pode ir a uma rua em dia errado — explicou a agente de limpeza durante a reunião do bairro. O município…
- — Nem toda travessia precisa emitir som ao mesmo tempo — explicou a técnica responsável pelos sinais acessíveis da…
- Na porta de um centro comunitário, voluntários recebem pedidos de doação e querem reduzir erros na hora de separar e…
- Em pseudocódigo, para um loop 'enquanto' que percorre índices i iniciando em 1 para acessar lista[1..n], qual condição…
- Projete em pseudocódigo um algoritmo que valide a força de uma senha recebida como dado: a senha deve ter pelo menos 8…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
