1.Fácil
Como funciona o selection sort?
- ADivide o array em metades e as intercala
- BEncontra repetidamente o mínimo da parte não ordenada e o troca para a frente
- CInsere cada elemento numa parte ordenada crescente por deslocamento
- DTroca repetidamente elementos vizinhos que estão na ordem errada
2.Fácil
A complexidade de espaço mede:
- AO tamanho físico do computador
- BA quantidade de memória que um algoritmo precisa à medida que a entrada cresce
- CO espaço em disco do arquivo do programa depois de compilado
- DO número de linhas de código
3.Fácil
Qual é a complexidade de tempo da busca binária em um array ordenado?
- AO(log n)
- BO(n log n)
- CO(1)
- DO(n)
4.Média
É correto dizer que um algoritmo O(n²) também é O(n³)?
- ANão, porque n³ é menor que n² para n grande
- BNão, porque o O grande deve sempre dar a taxa de crescimento exata da função
- CSim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
- DSim, mas só se n for menor que 100
5.Média
Uma função executa um laço de n iterações e depois, separadamente, outro laço de n iterações. Qual é a sua complexidade de tempo?
- AO(log n)
- BO(2ⁿ)
- CO(n)
- DO(n²)
6.Média
A busca em largura (BFS) em um grafo não ponderado encontra:
- AUma ordenação topológica em todos os grafos
- BCaminhos mínimos em grafos que contêm arestas com pesos negativos
- CCaminhos mínimos em número de arestas a partir do nó inicial
- DA árvore geradora mínima
7.Difícil
O problema da mochila 0/1 resolvido com programação dinâmica leva tempo O(nW). Por que isso é chamado de pseudopolinomial?
- APorque só funciona para W = 0
- BW é um número, então o tempo é exponencial no número de bits usados para escrever W
- CPorque o algoritmo é aleatorizado e seu tempo de execução varia a cada entrada
- DPorque n é sempre pequeno
8.Difícil
O algoritmo de Strassen multiplica matrizes usando 7, em vez de 8, multiplicações recursivas de blocos de metade do tamanho. Qual é o seu tempo de execução?
- AΘ(n² log n)
- BΘ(n³)
- CΘ(nlog₂ 7), cerca de n2,81
- DΘ(n2)
Gabarito
- 1. B · Encontra repetidamente o mínimo da parte não ordenada e o troca para a frente
- 2. B · A quantidade de memória que um algoritmo precisa à medida que a entrada cresce
- 3. A · O(log n)
- 4. C · Sim, porque o O grande é um limite superior e n² não cresce mais rápido que n³
- 5. C · O(n)
- 6. C · Caminhos mínimos em número de arestas a partir do nó inicial
- 7. B · W é um número, então o tempo é exponencial no número de bits usados para escrever W
- 8. C · Θ(nlog₂ 7), cerca de n2,81
Soluções completas passo a passo: pratique este tópico em examproblems.com.