Conjuntos Dinâmicos em Estruturas de Dados
Gabarito: letra D. Em estruturas de dados, as operações típicas sobre conjuntos dinâmicos são funções como Search, Insert, Minimum e Successor. "Tempo O(lg n)" não é uma operação, mas sim uma notação de complexidade de tempo, ou seja, uma medida de desempenho. Por isso, é a exceção pedida.
A questão testa o conhecimento das operações fundamentais em conjuntos dinâmicos (como árvores binárias de busca, heaps, etc.). As alternativas A, B, C e E são operações clássicas; a alternativa D foge ao escopo por ser uma classificação assintótica.
Alternativa A — ❌ Incorreta (é operação típica)
Search(S,k) é a operação de busca por um elemento k no conjunto S. É uma das operações básicas, presente em praticamente toda estrutura de dados dinâmica.
Alternativa B — ❌ Incorreta (é operação típica)
Insert(S,x) insere o elemento x no conjunto S. Operação fundamental para conjuntos dinâmicos.
Alternativa C — ❌ Incorreta (é operação típica)
Minimum(S) retorna o menor elemento do conjunto S. Operação comum em estruturas como heaps ou árvores ordenadas.
Alternativa D — ✅ Correta ⟵ GABARITO
"Tempo O(lg n)" não é uma operação, mas uma notação que indica a complexidade de tempo de uma operação (logarítmica). Portanto, não se enquadra como "operação típica para aplicação sobre conjuntos".
Alternativa E — ❌ Incorreta (é operação típica)
Successor(S,x) retorna o elemento seguinte ao x na ordem do conjunto. É uma operação clássica, especialmente em árvores binárias de busca.
Gabarito: letra D.