Questões de Concurso Comentadas sobre algoritmos e estrutura de dados
Foram encontradas 2.682 questões
Uma empresa coleta eventos de sensores IoT. Cada evento contém um identificador, o horário e um valor agregado ao evento:
• Identificador do sensor
• Data e hora do evento
• Valor agregado
Para monitorar algumas atividades, é gerado um relatório que indique a quantidade de eventos para os quais o valor agregado está acima de um limite.
Considerando uma lista de eventos, onde cada evento é representado por uma tupla con tendo os seguintes dados (sensor_id, timestamp, valor) e uma lista de sensores, temos a seguinte implementação para essa tarefa:
def gerar_relatorio(eventos, sensores, limite): relatorio = []
for sensor_id in sensores: total = 0
for evento in eventos: if evento[0] == sensor_id and evento[2] > limite:
total += 1 relatorio.append((sensor_id, total))
return relatorio
Sabendo que:
• A lista de eventos possui N registros (na ordem de milhões de eventos);
• A lista de sensores contém S sensores (na odem de centenas de sensores);
• Cada evento pertence a um sensor específico. Analise a complexidade assintótica do algoritmo e selecione a alternativa correta.
Ao optar pelo uso do código de Huffman, o número médio de bits/símbolo será de
Um algoritmo deve solicitar números ao usuário repetidamente até que ele digite zero. Todos os valores positivos informados devem ser somados antes do término.
A estrutura de repetição correta para implementar esse comportamento é chamada de
A técnica de otimização mais adequada para reduzir drasticamente o tempo de execução, sem alterar a natureza recursiva do algoritmo é
O algoritmo e a complexidade de tempo mais adequados são
Considerando somente o processamento do hash de uma única senha com comprimento fixo, a complexidade temporal da operação é de ordem
No que concerne a árvores rubro-negras, assinale a opção correta.
( ) Em fila duplamente encadeada, é permitido realizar inserções e remoções tanto no início quanto no fim da fila.
( ) A pilha é uma estrutura do tipo FIFO (First In, First Out), ou seja, o primeiro elemento a entrar é o primeiro a sair.
( ) Uma árvore é uma estrutura hierárquica composta por nós, com um nó raiz e subnós filhos.
( ) Grafos são um conjunto de vértices e arestas que podem representar relações entre elementos.
(__)O símbolo de "Terminal" (um oval ou retângulo com cantos arredondados) é usado para indicar o início ou o fim do algoritmo.
(__)O símbolo de "Processamento" (um retângulo) é usado para representar operações de atribuição, cálculos matemáticos ou qualquer manipulação de dados.
(__)O símbolo de "Decisão" (um losango) é usado para representar um ponto onde o fluxo se divide com base em uma condição lógica (ex: Sim/Não, Verdadeiro/Falso).
(__)O símbolo de "Entrada/Saída" (um paralelogramo) é usado exclusivamente para indicar que os dados devem ser impressos em papel.
Assinale a alternativa que apresenta a sequência correta, de cima para baixo: