Questões de Concurso
Comentadas sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 1.554 questões
Analise as proposições abaixo sobre algoritmos e estrutura de dados:
I. Os métodos de ordenação por inserção e bolha possuem complexidade O(n2 ) em relação ao número de comparações.
II. Embora O(n2 ), o método de ordenação por inserção possui complexidade Ω(n) em relação ao número de comparações.
III. O método de ordenação por inserção, assim como o Quicksort, é estável.
IV. O método de ordenação Quicksort tem complexidade O(n2 ) em seu pior caso.
Assinale a alternativa CORRETA:
Paulo propôs a Rodrigo um jogo, no qual Paulo escolhe um número entre 1 e 32 que Rodrigo deve tentar adivinhar. A cada palpite de Rodrigo, Paulo dá uma pista, dizendo se o palpite é igual, maior ou menor que o número escolhido. Se for igual o jogo é encerrado.
Assinale a opção que indica o número máximo de palpites que Paulo necessitaria até anunciar o número sorteado.
Considere o pseudo-código abaixo:
F0 = 0
F1 = 1
I = 0
ARA I DE 1 ATÉ 10, FAÇA
T = F1
F1 = F1 + F0
F0 = T
FIM PARA
MOSTRE F1
O valor da variável F1 exibido é
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?
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:
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, é
Julgue o item seguinte, quanto aos conceitos da programação estruturada e da programação orientada a objetos e aos métodos de ordenação, pesquisa e hashing.
Na pesquisa do tipo sequencial, há aumento do desempenho se
a tabela estiver ordenada pelo valor da chave.
Julgue o item seguinte, quanto aos conceitos da programação estruturada e da programação orientada a objetos e aos métodos de ordenação, pesquisa e hashing.
O método de ordenação conhecido como quick sort utiliza o
maior elemento, o qual é sempre colocado ao final do vetor,
para garantir que a ordenação seja realizada em ordem
decrescente.
Julgue o item seguinte a respeito da construção de algoritmos, dos conceitos de variáveis e de bloco de comandos e das estruturas de controle.
Durante a execução de um programa, o conteúdo de uma
variável pode mudar ao longo do tempo, no entanto ela só pode
armazenar um valor por vez.