Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.316 questões
Uma equipe de desenvolvimento está revisando trechos de código de um sistema interno responsável pelo controle de requisições administrativas. Durante a análise técnica, foram discutidos aspectos relacionados à construção de algoritmos, estrutura de decisão, repetição, modularização e análise de complexidade.
Com base em fundamentos de desenvolvimento de sistemas e lógica de programação, analise as assertivas a seguir e assinale V (verdadeiro) ou F (falso):
(__) Um algoritmo pode ser descrito em linguagem natural estruturada, pseudocódigo ou fluxograma, desde que represente uma sequência finita e ordenada de passos para resolução de um problema.
(__) A utilização de estruturas de repetição, como "para" ou "enquanto", elimina a necessidade de estruturas condicionais dentro do mesmo bloco lógico.
(__) A modularização de um sistema tende a favorecer manutenção e reutilização de código, especialmente quando há definição clara de responsabilidades entre funções ou métodos.
(__) Um algoritmo cuja complexidade de tempo é O(n²), quando o número de operações executadas cresce proporcionalmente a n2, necessariamente apresentará desempenho inadequado para qualquer volume de dados.
(__) Na lógica de programação, variáveis são utilizadas para armazenar valores que podem ser modificados durante a execução do algoritmo.
(__) A validação de entradas de dados contribui para reduzir falhas decorrentes de estados inesperados no fluxo de execução.
Assinale a alternativa que possui a sequência correta de V (verdadeiro) e F (falso) de cima para baixo:
1. “O algoritmo __________ percorre repetidamente o vetor, comparando elementos adjacentes e realizando trocas sempre que eles se encontram fora de ordem, até que nenhuma troca adicional seja necessária.”
2. “No método __________, cada novo elemento é inserido na posição adequada dentro da porção já ordenada do vetor, promovendo deslocamentos sucessivos dos elementos maiores.”
3. “O algoritmo __________ caracteriza-se por selecionar, a cada iteração, o menor elemento da região ainda não ordenada e posicioná-lo no início dessa região.”
4. “A técnica conhecida como __________ baseia-se na escolha de um elemento de referência, a partir do qual os demais elementos são reorganizados em dois grupos, menores e maiores, repetindo-se o processo nas subdivisões resultantes.”
5. “O procedimento __________ divide o vetor em partes menores, ordena essas partes separadamente e, em seguida, combina os resultados em uma única sequência ordenada.”
Assinale a alternativa que completa, corretamente, as afirmativas anteriores.
Após executar as quatro primeiras iterações do laço externo (i = 1, 2, 3 e 4), assinale a alternativa que identifica corretamente:
• O método de ordenação implementado; e
• O estado do array ao final de i = 4
I. O cálculo de rota mais curta em redes complexas utiliza predominantemente o algoritmo de Dijkstra ou suas variações, como o A* (A-star).
II. Em aplicações logísticas, o geoprocessamento elimina completamente a necessidade de dados históricos de tráfego, pois os algoritmos de roteamento utilizam apenas a distância geométrica entre os pontos de origem e destino.
III. A análise de "Isócronas" permite visualizar em um mapa todas as áreas que podem ser alcançadas a partir de um ponto em um determinado intervalo de tempo (ex.: 15 minutos).
A sequência correta é
função buscaBinaria(vetor [], valor) inferior ← 0 superior ← N - 1 enquanto inferior <= superior { comando faltante se vetor[índice] == valor retornar índice senão se vetor[índice] < valor inferior ← índice + 1 senão superior ← índice - 1 } retornar -1
O algoritmo trabalha com valores do tipo inteiro e o vetor tem N elementos ordenados de forma crescente, com o índice do primeiro elemento sendo zero. O algoritmo retorna o valor do índice do vetor que contém o valor pesquisado, ou retorna -1, se o valor não for encontrado no vetor. Qual linha deve substituir o comando faltante no algoritmo para que ele implemente corretamente a busca binária?
Assinale a alternativa que descreve corretamente esses dois conceitos.
Considere o algoritmo de ordenação para um vetor de inteiros na linguagem de programação Java:

Considerando n como o tamanho do vetor, assinale a alternativa CORRETA que corresponde à complexidade média de tempo do algoritmo na notação Big-O:
Assinale a afirmativa que compara corretamente a eficiência dos algoritmos de Busca Sequencial e Busca Binária neste cenário.
Com relação a derivação da fórmula da distância de Minkowski, analise as afirmativas a seguir.
I. Se P = 2, a fórmula calculará a distância Euclidiana.
II. Se P = 1, a fórmula calculará a distância de Manhattan.
III. Se P = 0, a fórmula calculará a distância Hamming.
Está correto o que se afirma em
A QUESTÃO SE REFERE AO PSEUDOCÓDIGO A SEGUIR.

Considerando a execução do pseudocódigo apresentado, qual será o valor exibido na saída?
No desenvolvimento de soluções computacionais, a lógica de programação fornece os fundamentos para a construção de algoritmos capazes de resolver problemas de forma estruturada e compreensível. Analise as afirmativas a seguir:
I. Um algoritmo pode ser entendido como uma sequência ordenada de passos que descreve a resolução de um problema, independentemente da linguagem de programação utilizada.
II. Fluxogramas utilizam símbolos gráficos padronizados para representar o fluxo de execução de um algoritmo, facilitando a visualização das decisões e repetições.
III. O pseudocódigo permite descrever algoritmos de forma textual e estruturada, sem exigir a sintaxe específica de uma linguagem de programação.
IV. Variáveis são utilizadas para armazenar dados durante a execução do algoritmo, podendo ter seus valores alterados conforme as instruções são processadas.
V. Estruturas de repetição substituem totalmente as estruturas de decisão, pois ambas exercem a mesma função lógica dentro de um algoritmo.
Assinale a alternativa correta:
No desenvolvimento de sistemas computacionais, a construção de algoritmos envolve a definição clara de passos, o uso adequado de estruturas de dados e a adoção de paradigmas de programação conforme o problema a ser resolvido. Acerca destes conhecimentos, analise as afirmativas a seguir:
I. Um algoritmo pode ser representado por diferentes formas, como pseudocódigo ou fluxogramas, desde que descreva de maneira lógica e ordenada as etapas necessárias para resolver um problema.
II. Estruturas de dados como listas, filas e pilhas organizam informações de modos distintos, influenciando diretamente a eficiência das operações de inserção, remoção e acesso aos dados.
III. No paradigma procedural, os programas são estruturados em procedimentos ou funções, priorizando a organização do código em blocos reutilizáveis.
IV. Na programação orientada a objetos, conceitos como classes e objetos permitem agrupar dados e comportamentos, favorecendo a modelagem de sistemas mais próximos da realidade.
V. Estruturas condicionais e de repetição são exclusivas do paradigma orientado a objetos, não sendo aplicáveis a algoritmos procedurais.
Assinale a alternativa correta:
