Questões de Concurso Sobre algoritmos e estrutura de dados
Foram encontradas 3.260 questões
Dado um pseudocódigo de uma função chamada FN1:
FN1 (V[], início, fim, e)
i recebe o índice do meio entre início e fim
se (v[i] = e) entao
devolva o índice i # elemento e encontrado
fimse
se (inicio = fim) entao
não encontrou o elemento procurado
senão
se (V[i] vem antes de e) então
faça a FN1 (V, i+1, fim, e)
senão
faça a FN1 (V, inicio, i-1, e)
fimse
fimse
Sobre o pseudocódigo foram feitas as seguintes afirmações:
I. FN1 é uma função é iterativa
II. Para FN1 devolver o índice i corretamente, o vetor V[ ] precisa estar ordenado.
III. Se o vetor V[ ] tiver 1024 elementos, podemos expressar que o número de suposições, no pior caso, como "o número de vezes que podemos reduzir pela metade, começando em n, até obter o valor 1, mais um" será de 11.
IV. A função matemática que representa a complexidade de FN1 é da ordem de log n.
Estão corretas
Assinale a alternativa que indica corretamente quantos itens do array a busca binária teria que examinar antes de concluir que 51 não está contido no array e, portanto, não é primo.
Considere o código-fonte abaixo, desenvolvido na linguagem de programação “Portugol”:
O número visualizado ao final da execução deste código-fonte é
Considere a seguinte expressão lógica, a ser inserida em um programa.
R ← ((A and B) or (C and D)) or E
As variáveis A, B, C, D, E e R são do tipo booleano, podendo assumir valores verdadeiro (1) ou falso (0).
Assinale a alternativa que apresenta valores para A, B, C, D e E que resultem o valor falso (0) em R.
Analise o programa a seguir, expresso na forma de uma pseudolinguagem, para responder à questão.
Suponha que na operação de leitura, no início do pseudocódigo, os vetores V1 e V2 tenham recebido os seguintes valores:
V1 = {1, 1, 2, 2, 3, 3, 4, 4, 5, 5}
V2 = {1, 2, 2, 3, 3, 3, 4, 4, 4, 4}
Analise o programa a seguir, expresso na forma de uma pseudolinguagem, para responder à questão.
Suponha que na operação de leitura, no início do pseudocódigo, os vetores V1 e V2 tenham recebido os seguintes valores:
V1 = {1, 1, 2, 2, 3, 3, 4, 4, 5, 5}
V2 = {1, 2, 2, 3, 3, 3, 4, 4, 4, 4}
Considere o seguinte algoritmo:
Para i de 7 até 4 Faça
aux <- v[i]
v[i] <- v[7 - i]
v[7 - i] <- aux
i <- i - 1
Fim_Para
max = maior v
v[2] <- v[0]
v[max - v[2]] <- v[max - v[1]]
Assinale a alternativa que possui o estado final do vetor v inicialmente definido com os elementos de 32 a 39.
Considere a figura abaixo e assinale a alternativa que contém todas as afirmações corretas.
I. A figura representa uma Árvore Binária de Busca (BST – Binary Search Tree). Se ela for percorrida em-ordem (inorder), a sequência de nodos visitados será: 2, 4, 7, 6, 8, 10, 9, 13, 12, 14, 20, 25, 31.
II. A figura representa uma Árvore Binária de Busca (BST – Binary Search Tree). Se ela for percorrida em pós-ordem (posorder), a sequência de nodos visitados será: 10, 7, 2, 4, 8, 6, 14, 13, 9, 12, 25, 20, 31.
III. A figura representa uma Árvore Binária de Busca (BST – Binary Search Tree). Se ela for percorrida em pré-ordem (preorder), a sequência de nodos visitados será: 4, 2, 6, 8, 7, 9, 12, 13, 20, 31, 25, 14, 10.
IV. A figura não representa uma Árvore Binária de Busca (BST – Binary Search Tree).
Considerando o algoritmo abaixo, assinale a alternativa correta.
Considere o algoritmo abaixo.
static int fibonacci(int n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 2) + fibonacci(n - 1);
}
A complexidade deste algoritmo, na notação Big O, é
Analise as afirmativas a seguir a respeito de algoritmos recursivos.
I. Diz-se que uma rotina é recursiva se a sua definição envolver uma chamada a ela mesma. Neste sentido, o termo recursão é equivalente ao termo indução utilizado por matemáticos.
II. Cada algoritmo recursivo possui um algoritmo iterativo equivalente e vice-versa, mas que pode ter mais ou menos complexidade em sua construção.
III. Uma função recursiva possui duas partes: caso base e caso recursivo.
IV. Um algoritmo pode ser chamado de iterativo quando ele requer a repetição implícita de um processo até que determinada condição seja satisfeita.
V. A recursividade possibilita a escrita de um código mais enxuto, com maior legibilidade e simplicidade.
Assinale a alternativa que possui alguma afirmação INCORRETA.