Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.316 questões
Considere o seguinte pseudo-código:

Para uma entrada a=5 e b=6, o resultado em tela depois da execução desse algoritmo, é
Analise as afirmativas a seguir sobre complexidade de algoritmos:
I. Algoritmos de complexidade O(log n) são chamados de complexidade logarítmica e resolvem um problema quebrando-o em problemas menores.
II. Algoritmos de complexidade O(n) são chamados de complexidade linear, em que um pequeno trabalho é realizado sobre cada elemento de entrada.
III. Algoritmos de complexidade O(1) são chamados de complexidade constante, em que as instruções do algoritmo são executadas um número fixo de vezes.
Estão CORRETAS as afirmativas:
Considere a função recursiva ‘func’ definida por
func(1) = 1
func(n) = (n - 1) * func(n - 1)
Quais são os valores de func(4) e func(5), respectivamente?
Considere o seguinte algoritmo
Inteiro array[10] = {0,1,2,3,4,5,6,7,8,9}
var i = 0
Enquanto i < 10 Faça
Inteiro temp = array[i]
array[i] = array[9-i]
array[9-i] = temp
i = i + 1
Fim enquanto
Qual será o conteúdo do vetor ‘array’ após a execução
do programa?
No que diz respeito a algoritmos e linguagens de programação, analise as afirmações a seguir.
1) É possível substituir comandos de condição (IF) por apenas comandos de repetição (WHILE) com as devidas no código.
2) A sequência de execução das instruções do algoritmo não tem importância, desde que todas sejam executadas em algum momento.
3) Um algoritmo não representa um programa de computador, e pode ser essencialmente executado por um ser humano se este tiver disponível tempo e memória suficientes.
Está(ão) correta(s), apenas:
Considere o algoritmo a seguir Inteiro
x1 =2, x2 = -1, x3 = 4
Enquanto (x1 > 0) faça
x2 = x3/3-x2*4
x1 = x3 % x1
Fim enquanto
Imprime(x2)
O que será impresso ao final do programa?
Analise as afirmativas a seguir sobre complexidade de algoritmos:
I. Algoritmos de complexidade O(n log n) resolvem um problema quebrando-o em problemas menores, resolvendo cada um deles independentemente e depois ajuntando as soluções.
II. Algoritmos de complexidade O(1) são chamados de complexidade linear, onde um pequeno trabalho é realizado sobre cada elemento de entrada.
III. Algoritmos de complexidade O(n) são chamados de complexidade constante, onde o tempo de execução cresce na mesma proporção do crescimento da estrutura de dados.
Estão CORRETAS as afirmativas:
Considere o seguinte trecho de código em Java para ordenação de um conjunto de números:

A ordem de complexidade desse algoritmo, considerando que o conjunto de números (n) não está ordenado, é:
De acordo com dados da SABESP, um pequeno buraco de 2 milímetros no encanamento desperdiça 3,2 mil litros de água em um dia. Um Analista escreveu o algoritmo em pseudocódigo abaixo para calcular o desperdício de água em função de buracos em encanamentos.

O comando que preenche corretamente a lacuna
Considere as figuras A e B abaixo.

No padrão ANSI, as figuras A e B representam um fluxograma, respectivamente:
Uma árvore binária completa de busca, isto é, uma árvore em que todos os níveis têm o máximo número de elementos, tem um total de N nós.
O número máximo de comparações necessárias para encontrar um elemento nessa árvore é
Quando dois elementos estão fora de ordem, há uma inversão, e esses dois elementos são trocados de posição, ficando em ordem correta. Assim, o primeiro elemento é comparado com o segundo. Se uma inversão for encontrada, a troca é feita. Em seguida, independentemente de se houve ou não troca após a primeira comparação, o segundo elemento é comparado com o terceiro, e, caso uma inversão seja encontrada, a troca é feita. O processo continua até que o penúltimo elemento seja comparado com o último. Com esse processo, garante-se que o elemento de maior valor do vetor seja levado para a última posição. A ordenação continua com o posicionamento do segundo maior elemento, do terceiro etc., até que todo o vetor esteja ordenado.
CELES, W.; CERQUEIRA, R.; RANGEL, J. L. Introdução a Estruturas de Dados. Rio de Janeiro: Elsevier, 2004, com adaptações.
Em relação ao algoritmo descrito, é correto afirmar que a
respectiva ordem de complexidade, no pior caso, é
Um programador construiu uma função para ordenar vetores de inteiros por meio do algoritmo de ordenação por inserção (insertion sort). A versão iterativa desse algoritmo possui dois loops aninhados. Suponha que esse programador tenha inserido, imediatamente antes do incremento da variável de controle do loop mais externo, uma chamada de uma função para percorrer e exibir o conteúdo do vetor que está sendo ordenado. O trecho de código a seguir ilustra como essa chamada é feita.

A Figura abaixo exibe o vetor que foi passado como parâmetro em uma chamada da função de ordenação.

O que será exibido no console quando o valor da variável i for igual a 3?