Logo Passei Direto
Buscar

Exercícios sobre Complexidade de Algoritmos

User badge image
Leticia

em

Ferramentas de estudo

Questões resolvidas

Considere o código abaixo, implementado utilizando-se a linguagem de programação Java:
A ordem de complexidade desse algoritmo é:
O(n * log n)
O(n)
O(2 * n)
O(log n)

Leia as afirmativas a seguir, considerando que f1(n) e f2(n) são funções positivas.
1. Se f2(n) é O(f1(n)), um algoritmo de função de complexidade de tempo f1(n) possui ordem de complexidade f2(n).
2. Se f2(n) é O(f1(n)), então f1(n) é um limite superior para f2(n).
3. Se a função f2(n) = 5 * log(n) + 11, então a função f2(n) é O(log(n)).
4. Se f2(n) = n e f1(n) = (n + 2), temos que f2(n) é O(f1(n)) e f1(n) é O(f2(n)).
5. Se f2(n) = 2 * n + 1 e f1(n) = 2 * n, temos que f2(n) = O(f1(n)).
1, 2, 4, 5
2, 3, 4, 5
2, 3, 4
2, 3, 5
1, 3, 4, 5

Considere dois vetores ordenados. Assuma ainda que cada um desses vetores apresente n elementos. Precisa-se formar então um terceiro vetor, correspondente à junção desses dois vetores ordenados mencionados anteriormente.
Pode-se afirmar que a ordem de complexidade desse processo será:
(n * log n)
(n)
(1)
(log n)

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Considere o código abaixo, implementado utilizando-se a linguagem de programação Java:
A ordem de complexidade desse algoritmo é:
O(n * log n)
O(n)
O(2 * n)
O(log n)

Leia as afirmativas a seguir, considerando que f1(n) e f2(n) são funções positivas.
1. Se f2(n) é O(f1(n)), um algoritmo de função de complexidade de tempo f1(n) possui ordem de complexidade f2(n).
2. Se f2(n) é O(f1(n)), então f1(n) é um limite superior para f2(n).
3. Se a função f2(n) = 5 * log(n) + 11, então a função f2(n) é O(log(n)).
4. Se f2(n) = n e f1(n) = (n + 2), temos que f2(n) é O(f1(n)) e f1(n) é O(f2(n)).
5. Se f2(n) = 2 * n + 1 e f1(n) = 2 * n, temos que f2(n) = O(f1(n)).
1, 2, 4, 5
2, 3, 4, 5
2, 3, 4
2, 3, 5
1, 3, 4, 5

Considere dois vetores ordenados. Assuma ainda que cada um desses vetores apresente n elementos. Precisa-se formar então um terceiro vetor, correspondente à junção desses dois vetores ordenados mencionados anteriormente.
Pode-se afirmar que a ordem de complexidade desse processo será:
(n * log n)
(n)
(1)
(log n)

Prévia do material em texto

<p>25/03/2023, 21:11 Exercícios sobre complexidade de algoritmos: Algoritmos e Estruturas de Dados II - Engenharia de Software - Unid. Educ. …</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465 1/5</p><p>Exercícios sobre complexidade de algoritmos</p><p>Entrega 26 mar em 23:59 Pontos 1 Perguntas 5</p><p>Disponível 22 mar em 10:00 - 26 mar em 23:59 Limite de tempo Nenhum</p><p>Instruções</p><p>Histórico de tentativas</p><p>Tentativa Tempo Pontuação</p><p>MAIS RECENTE Tentativa 1 1.580 minutos 0,8 de 1</p><p>Pontuação deste teste: 0,8 de 1</p><p>Enviado 25 mar em 21:11</p><p>Esta tentativa levou 1.580 minutos.</p><p>Prezados alunos,</p><p>Esses exercícios devem ser realizados individualmente e encerrados até o dia 26/03, às</p><p>23:59. Essa atividade tem o valor de 1 ponto.</p><p>Bons estudos!</p><p>Eveline</p><p>0,2 / 0,2 ptsPergunta 1</p><p>Abaixo temos um gráfico que evidencia a relação de domínio</p><p>assintótico entre diversas funções de complexidade de algoritmos.</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465/history?version=1</p><p>25/03/2023, 21:11 Exercícios sobre complexidade de algoritmos: Algoritmos e Estruturas de Dados II - Engenharia de Software - Unid. Educ. …</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465 2/5</p><p>Analisando o gráfico apresentado, podemos afirmar que:</p><p>f3 e f4 apresentam desempenho melhor que 2 .Correto!Correto! n</p><p>A ordem de complexidade de f3 corresponde a O(log n).2</p><p>O limite superior do comportamento do custo de uma função de</p><p>complexidade f(n) é n quando n aproxima-se de 2n.2</p><p>A complexidade de f1 corresponde a (n ).2</p><p>A notação O permite comparar os limites superiores dos</p><p>comportamentos de algoritmos. Assim, podemos afirmar que um</p><p>programa O(f4) é sempre melhor que um algoritmo O(f3).</p><p>0,2 / 0,2 ptsPergunta 2</p><p>Considere o código abaixo, implementado utilizando-se a linguagem</p><p>de programação Java:</p><p>public static boolean saoDisjuntos(int[] A, int[] B) {</p><p>25/03/2023, 21:11 Exercícios sobre complexidade de algoritmos: Algoritmos e Estruturas de Dados II - Engenharia de Software - Unid. Educ. …</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465 3/5</p><p>for (int i = 0; i < A.length; i++)</p><p>for (int j = 0; j < B.length; j++)</p><p>if (A[i] == B[j])</p><p>return false;</p><p>return true;</p><p>}</p><p>Considere ainda que cada um dos vetores</p><p>“A” e “B” apresenta n elementos.</p><p>A ordem de complexidade desse algoritmo é:</p><p>O( )Correto!Correto!</p><p>O(n * log n)</p><p>O(n)</p><p>O(2 * n)</p><p>O(log n)</p><p>0 / 0,2 ptsPergunta 3</p><p>Leia as afirmativas a seguir, considerando que f1(n) e f2(n) são</p><p>funções positivas.</p><p>1. Se f2(n) é O(f1(n)), um algoritmo de função de complexidade de</p><p>tempo f1(n) possui ordem de complexidade f2(n).</p><p>2. Se f2(n) é O(f1(n)), então f1(n) é um limite superior para f2(n).</p><p>3. Se a função f2(n) = 5 * log(n) + 11 , então a função f2(n) é</p><p>O(log(n)).</p><p>4. Se f2(n) = n e f1(n) = (n + 2) , temos que f2(n) é O(f1(n)) e f1(n) é</p><p>O(f2(n)).</p><p>5. Se f2(n) = 2 * n + 1 e f1(n) = 2 * n, temos que f2(n) = O(f1(n)).</p><p>2 2</p><p>25/03/2023, 21:11 Exercícios sobre complexidade de algoritmos: Algoritmos e Estruturas de Dados II - Engenharia de Software - Unid. Educ. …</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465 4/5</p><p>Assinale a alternativa que apresenta somente as</p><p>afirmativas CORRETAS.</p><p>1, 2, 4, 5</p><p>2, 3, 4, 5 esposta corretaesposta correta</p><p>2, 3, 4 ocê respondeuocê respondeu</p><p>2, 3, 5</p><p>1, 3, 4, 5</p><p>0,2 / 0,2 ptsPergunta 4</p><p>Um ponto importante a ser considerado no projeto de um algoritmo é a</p><p>eficiência da solução proposta. Essa eficiência tradicionalmente</p><p>relaciona o tamanho da entrada com o tempo de execução ou espaço</p><p>de memória necessários para a execução do algoritmo. Sabendo que</p><p>a função de complexidade de tempo de um algoritmo é</p><p>, analise as afirmações abaixo sobre a</p><p>ordem de complexidade desse algoritmo:</p><p>I. .</p><p>II. .</p><p>III. .</p><p>É correto o que se afirma em</p><p>²</p><p>³</p><p>²</p><p>II, apenas.</p><p>I e II, apenas Correto!Correto!</p><p>I, II e III.</p><p>II e III, apenas.</p><p>25/03/2023, 21:11 Exercícios sobre complexidade de algoritmos: Algoritmos e Estruturas de Dados II - Engenharia de Software - Unid. Educ. …</p><p>https://pucminas.instructure.com/courses/141793/quizzes/366465 5/5</p><p>I, apenas.</p><p>I. CORRETA: Como a função de complexidade de tempo do</p><p>algoritmo é , sua ordem de</p><p>complexidade é e, consequentemente, O de qualquer</p><p>função maior que .</p><p>II. CORRETA: Como a função de complexidade de tempo do</p><p>algoritmo é , sua ordem de</p><p>complexidade é .</p><p>III. ERRADA: Como a função de complexidade de tempo do</p><p>algoritmo é , sua ordem de</p><p>complexidade é , não podendo ser da ordem de uma</p><p>função menor que .</p><p>²</p><p>²</p><p>²</p><p>0,2 / 0,2 ptsPergunta 5</p><p>Considere dois vetores ordenados. Assuma ainda que cada um desses</p><p>vetores apresente n elementos. Precisa-se formar então um terceiro</p><p>vetor, correspondente à junção desses dois vetores ordenados</p><p>mencionados anteriormente. Dessa forma, esse terceiro vetor</p><p>apresentará 2n elementos, que também serão armazenados de forma</p><p>ordenada. Pode-se afirmar que a ordem de complexidade desse</p><p>processo será:</p><p>(n * log n)</p><p>(n )2</p><p>(1)</p><p>(log n)</p><p>(n)Correto!Correto!</p><p>Pontuação do teste: 0,8 de 1</p>

Mais conteúdos dessa disciplina