Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.422 questões
Aplicando busca binária para localizar o valor 19, quantas comparações serão realizadas até encontrar o elemento, considerando a estratégia padrão de busca binária que compara inicialmente com o elemento central? Considere a implementação clássica da busca binária que retorna o índice do elemento ou -1 se não encontrado. As comparações consideram apenas as verificações do elemento central.
Considere o algoritmo:

Qual é a complexidade assintótica?
Analise o seguinte pseudocódigo:

Qual será o valor retornado por f(7)?
Analise o trecho de pseudocódigo abaixo:

Qual é o valor impresso pelo algoritmo?
Analise a função recursiva abaixo escrita em pseudocódigo:

Qual é o valor retornado pela chamada calcular(6)?
Um professor solicita a um estudante que desenvolva um algoritmo em Portugol para calcular a média aritmética de um conjunto de notas inseridas pelo usuário, encerrando a entrada de dados quando o usuário digitar o valor –1. O estudante apresenta o seguinte algoritmo:

Considerando os fundamentos de algoritmos e lógica de programação, assinale a alternativa correta.
Sobre análise de complexidade e algoritmos de ordenação, analise as assertivas a seguir:
I. A notação O (big-O) define um limite superior assintótico: f(n) = O(g(n)) se, e somente se, existem constantes c > 0 e n₀ ≥ 1 tais que 0 ≤ f(n) ≤ c·g(n) para todo n ≥ n₀.
II. O Merge Sort apresenta complexidade Θ(n log n) no pior, no melhor e no caso médio, mantendo esse desempenho independentemente da distribuição de entrada.
III. O algoritmo Quick Sort com estratégia de pivô aleatório (randomized quicksort) possui complexidade Θ(n log n) no pior caso, eliminando completamente a possibilidade de comportamento quadrático.
IV. Se um algoritmo tem complexidade O(n²), então ele também tem complexidade O(n³), pois toda função limitada superiormente por c·n² também é limitada superiormente por c·n³ para n suficientemente grande.
Quais estão corretas?
I.Um algoritmo pode ser entendido como uma sequência organizada de passos destinada a resolver um problema ou executar uma tarefa computacional, podendo ser descrito por diferentes representações, como linguagem natural estruturada, pseudocódigo ou fluxogramas.
II.Fluxogramas utilizam símbolos gráficos padronizados para representar operações, decisões e fluxos de controle, permitindo visualizar a lógica de execução de um processo antes ou durante sua implementação em código.
III.O processo de depuração envolve a análise do comportamento de um programa ou algoritmo com o objetivo de localizar e corrigir falhas lógicas ou erros de implementação que afetam o resultado esperado.
IV.Em algoritmos estruturados, estruturas de decisão e repetição são utilizadas para controlar o fluxo de execução, permitindo que determinadas instruções sejam executadas de acordo com condições previamente avaliadas.
V.A etapa de depuração consiste apenas na tradução direta do algoritmo para uma linguagem de programação específica, sem envolver análise do comportamento do programa durante sua execução.
Com base nas afirmativas apresentadas, assinale a alternativa CORRETA:
Analise as afirmativas a seguir com base em suas propriedades formais de complexidade, estabilidade e uso de memória na implementação tradicional apresentada na literatura clássica.
I. O Insertion Sort possui complexidade de tempo O(n²) no pior caso e pode apresentar complexidade O(n) no melhor caso, quando o vetor já se encontra ordenado.
II. O Merge Sort apresenta complexidade O(n log n) nos casos melhor, médio e pior, é estável e, em sua implementação tradicional, requer espaço adicional proporcional a O(n).
III. O Quick Sort apresenta complexidade média O(n log n) e pior caso O(n²), podendo este ocorrer quando o pivô escolhido produz partições altamente desbalanceadas.
IV. O Selection Sort possui complexidade O(n²) nos casos melhor, médio e pior e, em sua implementação tradicional, não é considerado um algoritmo estável.
Assinale a alternativa CORRETA:
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.