Questões de Concurso Sobre algoritmos e estrutura de dados
Foram encontradas 3.121 questões
Considere o código-fonte que segue:
int f1(int n) {
if (n == 0 II n == 1) return n;
else return (2 * f1(n-1) + 3 * f1(n-2)); }
int f2(int n) {
int a; int[] X = new int [n];
int[] X = new int [n]; int[] Z = new int [n];
X [0] = Y [0] = Z [0] = 0;
X [1] = 1; Y [1] = 2; Z [1] = 3;
for (a = 2; a <= n; a ++) {
X [a] = Y [a-1] + Z [a-2];
Y [a] = 2 * X [a]; Z [a] = 3 * X [a]; }
return X [n]; }
Qual é o tempo de execução de f1(n) e f2(n),
respectivamente?
Sobre estruturas de dados do tipo árvore binária, analise as assertivas abaixo.
I. Diferente das listas simplesmente encadeadas, as árvores binárias permitem que cada nó tenha dois nós sucessores (filhos).
II. Raiz (root) é o nó mais inferior da árvore binária que não possui sucessores (filhos).
III. Folha (leaf) é qualquer nó da árvore binária que não tenha sucessores (filhos).
É correto o que se afirma em
Considere o algoritmo em pseudocódigo a seguir:
A alternativa que corresponde à saída do algoritmo é:
C * (B – A) <= D – B / C
Qual seria o resultado da execução dessa expressão, caso o valor das variáveis fossem: A=3; B=6; C=2 e D=9 ?
I - Toda expressão que possui um operador relacional, necessariamente, tem como resultado um valor do tipo “lógico”. II - O operador “mod” (ou “%”) retorna o resto da divisão entre dois números. III - É adequado o uso de variáveis cujo tipo de dados seja “inteiro” para armazenar nomes de pessoas.
Assinale a alternativa CORRETA.
I - Bubble Sort é um algoritmo de ordenação com caso médio de ordem O(n2). II - Um algoritmo de ordenação é estável quando sempre mantém os elementos repetidos na mesma ordem em que aparecem na entrada. III - Merge Sort foi inventado após 1940. IV - Merge Sort é um algoritmo que permite paralelismo. V - Timsort é um algoritmo híbrido derivado do Merge Sort e do Insertion Sort.
I f(n) = Θ(g(n)) e g(n) = Θ(b(n)), logo f(n) = Θ(b(n)) II f(n) = O(g(n)) se e somente se g(n) = Ω(f(n)) III f(n) = O(g(n)) se e somente se g(n) = O(f(n)) IV f(n) = O(g(n)) e g(n) = O(b(n)), logo f(n) = Ω(b(n))
Em relação ao exposto, estão corretas as afirmativas
Considere a representação da árvore binária abaixo.
Sobre essa representação é correto afirmar que
Analise os dois algoritmos a seguir:
Em relação aos algoritmos expostos, é correto afirmar que
- inserção: inserir um novo número em um conjunto; - seleção: encontrar um elemento máximo (ou mínimo) de um conjunto; - remoção: extrair um elemento máximo (ou mínimo) de conjunto.
Uma maneira eficiente de implementar uma fila de prioridades, obtendo tempo proporcional a O(1) na seleção e O(log2 n) na inserção e remoção é através da TAD
de Morgan, (A • B)' = A' • B'.