Questões de Concursos Públicos - Algoritmos e Estrutura de Dados
Resolva questões gratuitas da Algoritmos e Estrutura de Dados. Banco com 109 perguntas de concursos. Prepare-se com simulados e estatísticas de acerto.
Q9930
Unesc - 2026 - Prefeitura de Meleiro - SC - Professor de Computação
Ano: 2026
Órgão:
Prefeitura de Meleiro - SC
Banca:
Unesc
Matéria:
Algoritmos e Estrutura de Dados
Assunto: Algoritmos
Durante o ensino de algoritmos, é necessário explicar
estruturas de controle que permitem a execução
repetitiva de um bloco de código até que uma condição
seja satisfeita. Assinale a alternativa correta que
identifica a estrutura de repetição que garante que o
bloco de comandos seja executado pelo menos uma vez,
pois o teste lógico é realizado no final do laço.
Q7431
FGV - 2026 - PC-PI - Perito Criminal - Informática Forense
Ano: 2026
Órgão:
PC-PI
Banca:
FGV
Matéria:
Algoritmos e Estrutura de Dados
Assunto: Estrutura de Dados
A árvore rubro-negra é uma estrutura de dados de árvore auto-balanceada que mantém propriedades específicas para garantir
desempenho consistente na manipulação de dados. Essa estrutura
está presente em diversos componentes utilizados, por exemplo,
em ferramentas de computação forense, como indexadores,
analisadores de sistemas de arquivos e mecanismos de ordenação
de eventos.
No que concerne a árvores rubro-negras, assinale a opção correta.
Q7420
FGV - 2026 - PC-PI - Perito Criminal - Informática Forense
Um malware interage com um hash criptográfico ideal utilizado
para proteger a senha do usuário.
Considerando somente o processamento do hash de uma única
senha com comprimento fixo, a complexidade temporal da
operação é de ordem
Q6425
FGV - 2026 - AMAZUL - Técnico de Informática
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
Q5923
FGV - 2026 - AMAZUL - Engenheiro de Telecomunicações
Ano: 2026
Órgão:
AMAZUL
Banca:
FGV
Matéria:
Algoritmos e Estrutura de Dados
Assunto: Estrutura de Dados
Deseja-se digitalizar e comprimir a sequência de caracteres
ABACADAE.
Ao optar pelo uso do código de Huffman, o número médio de
bits/símbolo será de
Q5433
IF-SP - 2026 - IF-SP - Analista de Tecnologia da Informação
Um programa de computador foi desenvolvido para gerar uma matriz quadrada com 45 linhas e 45 colunas. Os elementos dessa matriz são
gerados um a um, da esquerda para a direita, linha
após linha. Isso significa que todas as 45 entradas
da primeira linha são preenchidas primeiro, para
depois preencher todas as entradas da segunda linha, e assim sucessivamente, até a 45ª linha, sempre da esquerda para a direita em cada linha.
O primeiro elemento da matriz, localizado
na primeira linha e primeira coluna, é o número
11, e cada novo elemento é calculado com base
no elemento preenchido imediatamente antes, de
acordo com as seguintes regras:
• Se o elemento preenchido imediatamente antes for um número par, então o novo elemento será a metade desse número.
• Se o elemento preenchido imediatamente antes for um número ímpar, então o novo elemento será o triplo desse número, mais 1. Os primeiros elementos da matriz estão representados a seguir: Se o programa prosseguiu utilizando essas regras até completar todas as 45 linhas, então a soma de todos os elementos da última linha dessa matriz é:
• Se o elemento preenchido imediatamente antes for um número par, então o novo elemento será a metade desse número.
• Se o elemento preenchido imediatamente antes for um número ímpar, então o novo elemento será o triplo desse número, mais 1. Os primeiros elementos da matriz estão representados a seguir: Se o programa prosseguiu utilizando essas regras até completar todas as 45 linhas, então a soma de todos os elementos da última linha dessa matriz é:
Q5426
IF-SP - 2026 - IF-SP - Analista de Tecnologia da Informação
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.
• 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.
Q5422
IF-SP - 2026 - IF-SP - Analista de Tecnologia da Informação
Considere um cenário em que é necessário
organizar uma lista de objetos com base em um
atributo específico (como nome, preço ou data)
e, posteriormente, realizar buscas eficientes sobre
essa lista. Com base nos fundamentos de algoritmos de busca e ordenação, analise as afirmativas
a seguir:
I.
O algoritmo Merge Sort é mais indicado do
que o Bubble Sort quando se busca maior
eficiência em listas grandes, pois apresenta
complexidade de tempo O(n log n) em todos
os casos.
II. A ordenação prévia de uma lista permite que
algoritmos de busca binária sejam aplicados,
o que reduz o tempo médio de busca para
O(log n).
III. O algoritmo Insertion Sort é adequado para
listas grandes (n > 1000000), pois sua implementação é simples e o custo de ordenação é
aceitável nesse contexto.
IV. A busca sequencial apresenta melhor desempenho do que a busca binária em listas grandes, especialmente quando os dados estão
ordenados.
Q5419
IF-SP - 2026 - IF-SP - Analista de Tecnologia da Informação
Ano: 2026
Órgão:
IF-SP
Banca:
IF-SP
Matéria:
Algoritmos e Estrutura de Dados
Assunto: Estrutura de Dados
Uma livraria precisa gerenciar seu catálogo digital onde novos títulos são constantemente
adicionados e livros esgotados são removidos. É
essencial que as operações de inserção, remoção
e busca por títulos sejam rápidas (idealmente em
tempo logarítmico) para não impactar as vendas.
O sistema deve manter os livros sempre em ordem
alfabética.
Nesse contexto, qual estrutura de dados é mais
adequada para atender a esses requisitos de um catálogo dinâmico e ordenado?
Q622
Instituto Access - 2026 - UNIPAMPA - Analista de Tecnologia da Informação
Ano: 2026
Órgão:
UNIPAMPA
Banca:
Instituto Access
Matéria:
Algoritmos e Estrutura de Dados
Assunto: Algoritmos
Considerando o uso de pseudocódigo, fluxogramas,
estruturas de controle, vetores, matrizes, registros,
procedimentos e funções, analise as assertivas a seguir
e assinale V (Verdadeiro) ou F (Falso):
(__)Em pseudocódigo, estruturas de seleção permitem a
execução condicional de blocos de instruções distintos,
conforme o resultado de uma expressão lógica avaliada
durante a execução do algoritmo.
(__)Fluxogramas utilizam símbolos padronizados para
representar decisões, entradas, saídas e
processamento, facilitando a visualização do fluxo lógico,
ainda que não substituam integralmente a descrição
textual do algoritmo.
(__)Estruturas de repetição possibilitam a execução
contínua de um conjunto de instruções enquanto uma
condição permanecer verdadeira, sendo geralmente
empregadas quando o número de iterações não é
previamente conhecido.
(__)Vetores e matrizes são estruturas equivalentes
quanto à organização lógica dos dados, diferenciando-se
apenas pela quantidade de elementos armazenados,
sem impacto na forma de acesso ou indexação.
(__)Registros permitem agrupar dados de naturezas
diferentes sob um mesmo identificador, o que favorece a
organização de informações relacionadas em um
algoritmo.
(__)Procedimentos e funções têm como principal
diferença o fato de que apenas as funções podem
devolver valores ao algoritmo chamador, enquanto
procedimentos executam ações sem retorno direto.
Assinale a alternativa que mostra corretamente a
sequência de V(verdadeiro) e F (falso) de cima para
baixo:
« Anterior
Próximo »