Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: EEX0030 - COMPLEXIDADE DE ALGORITMOS Período: 2021.3 EAD (GT) / AV Data: 20/11/2021 10:15:36 Turma: 9002 ATENÇÃO 1. Veja abaixo, todas as suas respostas gravadas no nosso banco de dados. 2. Caso você queira voltar à prova clique no botão "Retornar à Avaliação". 1a Questão (Ref.: 202007604354) Uma lista ordenada de N números é inserida em uma pilha e depois retirada, sendo que, a cada POP, o elemento retirado é inserido em um vetor de elementos. Após a completa inserção de todos os elementos neste vetor, são feitas buscas de números na mesma. O tempo médio de busca de um número neste elemento é: O(N\(^2\)) O(N) O(log N) O(1) O(Nlog N) 2a Questão (Ref.: 202007604356) Analise o custo computacional dos algoritmos a seguir, que calculam o valor de polinomio de grau n da forma onde os coeficientes são números de ponto flutuante armazenados no vetor [a..n], e o valor de n é maior que zero. Todos os coeficientes podem assumir qualquer valor, exceto o coeficiente \(a_n\) que é diferente de zero. Com base nos algoritmos 1 e 2, avalie as asserções a seguir e a relação proposta entre elas. 1. Os algoritmos possuem a mesma complexida assintótica PORQUE 1. Para o melhor caso, ambos possuem a complexidade O(n) A respeito dessas asserções, assinale a opção correta: tanto a primeira quanto a segunda asserções são proposições falsas. a primeira asserção é uma proposição falsa e a segunda uma proposição verdadeira. as duas asserções são proposições verdadeiras e a segunda não é a justificativa correta da primeira. as duas asserções são proposições verdadeiras, mas a segunda é uma justificativa correta da primeira. a primeira asserção é uma proposição verdadeira e a segunda uma proposição falsa. 3a Questão (Ref.: 202007606346) O código abaixo é uma implementação: public class Misterio { public static long Misterio(long x) { if (x == 1) return 1; else return x * Misterio(x-1); } } Recursiva do fatorial Iterativa da exponenciação Iterativa da série de Fibonacci Recursiva da série de Fibonacci Recursiva da exponenciação 4a Questão (Ref.: 202007606344) Analise o seguinte código: public static double recursive (double d) { if (d <= 1) { return 1; } else { return d * recursive(d - 1); } } Assinale o conteúdo que será exibido na saída do programa quando a função for chamada com o parâmetro 6: 1440 360 120 720 240 5a Questão (Ref.: 202007667209) Correlacione os algoritmos internos de ordenação de listas com sua descrição: I. Bubble sort II. Ordenação por seleção III. Ordenação por inserção IV. Shell sort V. Quick sort ( ) Escolhe-se um pivô e particiona-se a lista em duas sublistas - uma com os elementos menores que ele e outra com os maiores, que, ao serem ordenadas e combinadas com o pivô, geram uma lista ordenada. O processo é aplicado às partições para ordená-las. Embora tenha uma complexidade de pior caso de O(n2 ), no caso médio, é de O(n log n). ( ) Encontra-se o menor item do vetor. Troca-se com o item da primeira posição do vetor. Repetem-se essas duas operações com os n − 1 itens restantes; depois, com os n − 2 itens; até que reste apenas um elemento. ( ) Método preferido dos jogadores de cartas. A cada momento, existem duas partes na lista ¿ uma ordenada (destino) e outra não ordenada (fonte). Inicialmente, a lista destino tem apenas o primeiro elemento, e a fonte, os demais elementos. Em cada passo, a partir de i=2, seleciona-se o i-ésimo item da lista fonte. Deve-se colocá-lo no lugar apropriado na lista destino, de acordo com o critério de ordenação. ( ) É uma extensão de outro algoritmo de ordenação conhecido e permite trocas de elementos distantes um do outro, não necessariamente adjacentes. Os itens separados de h posições são rearranjados. Todo h-ésimo item leva a uma lista ordenada. Tal lista é dita estar h-ordenada. ( ) Varre-se a lista, trocando de posição os elementos adjacentes fora de ordem. Varre-se a lista até que não haja mais trocas. Neste caso, a lista está ordenada. A sequência correta, de cima para baixo, é: V, II, III, IV, I V, IV, II, III, I I, III, II, IV, V I, II, III, IV, V I, IV, V, III, II 6a Questão (Ref.: 202007673055) Se f é uma função de complexidade para um algoritmo F, então, O(f) é considerada a complexidade assintótica ou o comportamento assintótico do algoritmo F. Assinale a alternativa que apresenta somente algoritmos com complexidade assintótica, quando f(n) = O(n log n): Insertion sort. Bubble sort. Quick sort e merge sort. Merge sort e bubble sort. Quick sort e insertion sort. 7a Questão (Ref.: 202007604372) 8a Questão (Ref.: 202007604363) Árvore de pesquisa é uma estrutura de dados eficiente para armazenar informação, sendo particularmente adequada quando existe a necessidade de considerar todos ou alguma combinação de registros. Assinale uma combinação correta desses registros. As operações de inserir, retirar e pesquisar são definidas. Não é necessário indexar os registros. Acesso direto e sequencial eficientes, facilidade de inserção e retirada de registro, boa taxa de utilização de memória, utilização de memória primária e secundária. Utilização de estruturas de dados como lista, pilha e fila. Utilização de algoritmos de ordenação eficientes. 9a Questão (Ref.: 202007606360) (CESGRANRIO - Banco da Amazônia - Técnico Científico - Banco de Dados - 2014) O grafo anterior pode ser representado pela seguinte matriz: 10a Questão (Ref.: 202007606359) (CESPE/CEBRASPE - TRT - 8ª Região (PA e AP) - Analista Judiciário - Tecnologia da Informação - 2016) A quantidade de grau total do grafo na figura é: 16 17 14 13 15
Compartilhar