Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — UECE-CEV 2025

Algoritmos e Estrutura de DadosAlgoritmos
Código
qg615403
Banca
UECE-CEV
Órgão
PGE-CE
Ano
2025
Nível
Médio
Cargo
Técnico de Representação Judicial - Tecnologia da Informação - Análise e Desenvolvimento de Sistemas
A complexidade de inserção de um elemento em uma posição fora das extremidades em uma lista duplamente encadeada é
  1. AO(1).
  2. BO(n).
  3. CO(n log n).
  4. DO(log n).
  5. EO(log n2).
Revelar gabarito e comentário

GabaritoB — O(n).

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Complexidade de Inserção em Lista Duplamente Encadeada

Gabarito: letra B — O(n). Para inserir um elemento em uma posição que não está nas extremidades, é necessário percorrer a lista até encontrar o nó anterior à posição desejada, o que exige tempo linear O(n) no pior caso. A operação de inserção em si (ajuste dos ponteiros) é O(1), mas o custo dominante é a busca do ponto de inserção.

A questão testa a diferença entre a complexidade das operações em listas encadeadas: inserir no início ou fim é O(1); inserir em posição arbitrária requer percurso, resultando em O(n). Vejamos cada alternativa:

  1. 1Percorrer até o nó anterior
  2. 2Busca do pontoO(n)
  3. 3Ajustar ponteiros
  4. 4Inserção em siO(1)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

O(1) só é possível para inserção no início ou no fim, quando se possui referência direta. Para posições intermediárias, a lista deve ser percorrida.

Alternativa B — ✅ Correta ⟵ GABARITO

Conforme explicado, encontrar o local leva tempo proporcional ao número de elementos no pior caso, ou seja, O(n).

Alternativa C — ❌ Incorreta

O(n log n) é típico de algoritmos de ordenação eficientes, não se aplica à inserção em lista encadeada.

Alternativa D — ❌ Incorreta

O(log n) ocorre em estruturas que permitem busca binária (arrays ordenados ou árvores balanceadas), não em listas lineares.

Alternativa E — ❌ Incorreta

O(log n²) é equivalente a O(2 log n) = O(log n) na notação assintótica, e não corresponde à complexidade da operação.

NÃO CAIA NESSA!

A pegadinha clássica é confundir o custo da inserção (O(1) após achar o nó) com o custo total da operação, que inclui a busca. Lembre-se: manipular ponteiros é rápido; encontrar a posição é que custa caro. Treine essa distinção para não cair nela na prova!

Gabarito: letra B — O(n).

Link permanente: /questoes/qg615403