Questionário sobre Estruturas de Dados

Para passar no quiz, você deve responder corretamente pelo menos 18 das 20 perguntas abaixo.
O que a notação Big O descreve na análise de algoritmos?
Ao iniciar um desafio algorítmico, qual é o melhor primeiro passo?
Qual é a principal diferença entre arrays dinâmicos e arrays estáticos?
Qual é a complexidade de tempo amortizado de adicionar um elemento ao final de um array dinâmico?
Por que acessar o k-ésimo elemento pelo índice em uma lista simplesmente encadeada leva tempo O(n)?
Qual recurso uma lista duplamente ligada possui que uma lista simplesmente ligada não possui?
Qual das seguintes opções melhor descreve uma pilha?
Qual operação remove o elemento da frente de uma fila?
Qual é a complexidade de tempo média típica para buscar um valor por chave em um hash map?
Qual garantia é fornecida por uma estrutura de dados do tipo conjunto?
Em um array dinâmico, qual é a complexidade de tempo no pior caso para inserir um elemento no índice i (não no final)?
Qual é a complexidade de tempo para inserir um novo nó na cabeça de uma lista ligada simples?
Qual operação retorna o elemento do topo de uma pilha sem removê-lo?
Qual das seguintes opções melhor descreve uma fila?
O que é uma descrição de alto nível da lógica do algoritmo que é independente de linguagem chamada?
Qual é uma das coisas que você deve fazer para entender um problema?
Quais dois componentes você deve identificar ao resolver um problema?
Qual complexidade de tempo cresce mais rápido que O(n log n) conforme n se torna grande?
Após implementar uma solução de força bruta, qual é um bom próximo passo?
O que a complexidade de espaço mede?