Buscar

Estrutura de Dados 2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

 Pergunta 1 
1 em 1 pontos 
 Em aplicações encontramos problemas que muitas vezes precisam ser 
ordenados, essa ordenação facilita o tempo de resposta das aplicações. 
Ordenar pode ser, organizar os números em ordem crescente ou 
decrescente, organizar nomes em ordem alfabética, entre outros. Para 
organizar os elementos de uma forma eficiente se faz necessária a utilização 
de métodos como os algoritmos de ordenação. Assim, analise as afirmativas 
a seguir. 
 
 I. Faz uma analogia do método com o modo que 
algumas pessoas ordem cartas de baralho em jogo. 
 II. Método de ordenação mais complexo, possui a 
estratégia dividir para conquistar e seleciona um pivô para auxiliar na 
ordenação dos elementos. 
 III. O algoritmo irá percorrer o array comparando todos os 
elementos até encontrar o menor elemento e alocar na posição inicial 
do array 
 IV. A interação do método se limita em percorrer diversas vezes 
o array do início ao fim, sem interrupção, trocando a posição de dois elementos sempre que estiverem 
desordenados 
As afirmativas apresentam diferentes possibilidades de sequências, sendo 
apenas uma alternativa correta: 
 
Resposta Selecionada: 
. Insertion-Sort, Selection-Sort, Quick_Sort, Bubble-Sort. 
Resposta Correta: 
.Insertion-Sort, Selection-Sort, Quick_Sort, Bubble-Sort. 
Feedback 
da resposta: 
Resposta correta. Existem vários métodos que são utilizados 
para ordenar, alguns mais simples e outros mais complexos. 
Esses métodos são estrutura de dados e a utilização de 
métodos corretos nos algoritmos faz com que aumente a 
eficiência das aplicações. 
 
 
 Pergunta 2 
1 em 1 pontos 
 Ordenar “corresponde ao processo de rearranjar um conjunto de objetos em 
ordem ascendente ou descendente. O objetivo principal da ordenação é 
facilitar a recuperação posterior de itens do conjunto ordenado”. (ZIVIANI, 
Nivio. Projeto de Algoritmos: com implementações em JAVA e 
C++. Cengage Learning Editores, 2012). Analise as afirmativas abaixo sobre 
os conceitos de algoritmos de ordenação. 
 
 I. Uma vantagem de entender os métodos de ordenação 
por meio do pseudocódigo faz a transformação do algoritmo para linguagens 
de programação torna atividade mais simples. 
 II. O algoritmo Bublle Sort, possui complexidade O ( n -1) 
para o melhor caso e O ( n 2) para o pior caso. 
 III. O algoritmo Quick Sort é baseado no fato de que as 
interações devem ser preferencialmente empregadas para pares de 
 
elementos que guardem entre si distâncias grandes, com a finalidade de se 
conseguir uma eficiência maior. 
 IV. O algoritmo Selection Sort, possui complexidade O ( n) 
em todos os casos de complexidade, ou seja, melhor caso, médio caso e 
pior caso. (F) 
 
Julgue e assinale se as afirmativas acima são verdadeiras (V) ou falsas (F). 
Resposta Selecionada: 
.V, F, V, F. 
Resposta Correta: 
.V, F, V, F. 
Feedback da 
resposta: 
Resposta correta. Podemos utilizar código mais simples para 
representar conceitos, ou utilizar formas genéricas de escrever 
um algoritmo, utilizando uma linguagem simples. 
 
 
 Pergunta 3 
1 em 1 pontos 
 Para descobrir se um algoritmo de ordenação é eficiente, existe uma função 
que pode ser calculada, essa função é chamada de complexidade de 
algoritmo. Assim, cada algoritmo possui uma função para representar a sua 
complexidade, que pode ser analisada em vários cenários, como o melhor 
caso, médio caso e pior caso. Considere um array com 1000 elementos. 
Levando em conta que todos os elementos estão organizados de forma 
decrescente. Para ordenar esse array em ordem crescente utilizando o 
método Bubble Sort, assinale a alternativa que contem a complexidade para 
essa ordenação. 
 
Resposta Selecionada: 
. O(n²). 
Resposta Correta: 
. O(n²). 
Feedback da 
resposta: 
Resposta correta. Bubble-Sort é um dos métodos mais 
difundidos. A sua interação se limita em percorrer n vezes o array do início ao 
fim, sem interrupção, trocando a posição dos elementos sempre 
que estiverem desordenados. 
 
 
 Pergunta 4 
1 em 1 pontos 
 Existem estruturas de dados com métodos específicos para ordenação. Os 
conceitos dessas estruturas são aplicados aos algoritmos para melhorar o 
tempo de execução nas aplicações. Cada método de ordenação possui um 
conceito e uma forma de manipular os dados. Assim, analise o código 
abaixo: 
 
Qual a alternativa que corresponde aos conceitos de ordenação do 
pseudocódigo (imagem) acima: 
 
Resposta Selecionada: 
 
. Bubble Sort. 
Resposta Correta: 
.Bubble Sort. 
Feedback da 
resposta: 
Resposta correta. O algoritmo se limita em percorrer diversas 
vezes o array 
do início ao fim, sem interrupção, trocando a posição de dois 
elementos sempre que estiverem desordenados. 
 
 Pergunta 5 
1 em 1 pontos 
 A complexidade de um algoritmo é calculada por meio da complexidade 
temporal e espacial, sendo na primeira o cálculo do tempo que as instruções 
levam para serem executadas em uma aplicação (utilizando as funções), e 
na sequência, o espaço na memória que o algoritmo utiliza enquanto é 
executado. Existem algoritmos que necessitam de muito mais espaço, como 
o Algoritmo _____________. Assinale a alternativa que complete o nome de 
algoritmo que exige mais espaço na memória. 
 
Resposta Selecionada: 
. Merge Sort. 
Resposta Correta: 
. Merge Sort. 
Feedback 
da resposta: 
Resposta correta. Um algoritmo estável, muito indicado para 
organizar uma grande quantidade de dados, com um 
desempenho de (n log n) para todos os casos. Sendo muito 
eficiente quando levamos em conta o tempo de execução do 
algoritmo. 
 
 
 Pergunta 6 
1 em 1 pontos 
 Algoritmos de ordenação são exemplos de algoritmos desenvolvido para 
solucionar de forma mais rápida e eficiente alguns problemas com o auxílio 
de um computador. Existem diversos métodos que podem ser utilizados, 
cada método tem procedimentos distintos para resolver uma determinada 
tarefa. Assinale a alternativa a seguir que pode ser considerados métodos de 
ordenação? 
 
Resposta Selecionada: 
. bubble sort, selection sort, merge sort, quick sort. 
Resposta Correta: 
.bubble sort, selection sort, merge sort, quick sort. 
Feedback 
da resposta: 
Resposta correta. Existem vários algoritmos de ordenação, 
alguns mais simples e outros mais sofisticados. Os métodos 
mais simples são mais adequados para organizar poucos dados, 
diferente dos mais sofisticados que são mais complexos e 
organizam uma quantidade de dados maior de forma mais 
eficiente. 
 
 
 Pergunta 7 
1 em 1 pontos 
 A tarefa de obter uma expressão matemática para avaliar o tempo de execução de um 
algoritmo não é simples, mesmo considerando-se uma expressão aproximada 
(SZWARCFITER, Jayme Luiz; MARKENZON, Lilian. Estruturas de Dados e seus 
Algoritmos . 3. ed. Rio de Janeiro: Ltc, 2010). As expressões são representadas por meio 
de funções, no qual podemos descobrir a complexidade do algoritmo. Desta forma, analise 
as afirmativas abaixo. 
 
 I. O algoritmo Bubble Sort não é um algoritmo estável. 
 II. O algoritmo Bublle Sort , possui complexidade O ( n ) para o 
melhor caso e O ( n 2 ) para o pior caso. 
 III. O algoritmo Quick Sort possui complexidade O ( n log ( n )) para o 
melhor caso. 
 IV. O algoritmo Quick Sort é um algoritmo estável. 
Julgue e assinale se as afirmativas acima são verdadeiras (V) ou falsas (F). 
 
Resposta Selecionada: 
.F, V, V, F. 
Resposta Correta: 
.F, V, V, F. 
Feedback da 
resposta: 
Resposta correta. Existem algoritmos que são estáveis e 
outros não,esse conceito se refere ao fato do algoritmo não 
alterar os dados quando os mesmos são iguais. 
 
 
 Pergunta 8 
1 em 1 pontos 
 O método de ordenação Bubble Sort , também conhecido como método bolha, é 
classificado como um método simples e também um dos métodos mais utilizados. Utilize 
esse algoritmo para ordenar um array unidimensional, contendo os números [6,5,0,3,2] em 
ordem crescente. 
Assinale a alternativa a seguir que apresente a quantidade de comparações e trocas que 
serão realizados para ordenar o array utilizando o algoritmo Bubble Sort . 
 
Resposta Selecionada: 
.10 comparações e 8 trocas. 
Resposta Correta: 
.10 comparações e 8 trocas. 
Feedback da 
resposta: 
Resposta correta. O algoritmo Bubble Sort se limita em 
percorrer n vezes os elementos do array do início ao fim, sem 
interrupção, trocando a posição dos elementos sempre que 
estiverem desordenados. 
 
 
 Pergunta 9 
0 em 1 pontos 
 Os algoritmos de ordenação foram desenvolvidos para auxiliar na ordenação 
e com isso melhor a eficiente de busca dos sistemas. O algoritmo na 
imagem abaixo está percorrendo o array 
comparando todos os elementos até encontrar o menor elemento. Encontrando o menor 
elemento, o algoritmo irá posicioná-lo na posição inicial do array. A imagem 
abaixo está descrevendo o pseudocódigo de um algoritmo específico. 
 
 
Analise os conceitos descritos acima e a imagem. Assinale a alternativa que 
corresponde aos conceitos e ao código acima: 
Resposta Selecionada: 
. Quick Sort. 
Resposta Correta: 
. Selection Sort. 
Feedback 
da resposta: 
Sua resposta está incorreta. O Algoritmo é estável, não 
alterando a ordem dos dados quando possuem o mesmo valor. 
Esse algoritmo também organiza os elementos assim que os 
recebe, sem precisar que todos os elementos estejam 
armazenados. 
 
 
 Pergunta 10 
1 em 1 pontos 
 O algoritmo Merge-Sort, faz o uso da estratégia dividir para conquistar. 
Assim, sua ideia é dividir o conjunto de dados em subconjuntos, reorganiza 
cada subconjunto e depois intercala os resultados. De acordo com o método 
descrito, assinale a alternativa que descreva a complexidade do algoritmo no 
melhor caso e no pior caso 
 
Resposta Selecionada: 
Melhor caso: O (n log n) 
Pior caso: O (n log n). 
Resposta Correta: 
Melhor caso: O (n log n) 
Pior caso: O (n log n). 
Feedback da 
resposta: 
Resposta correta. Apesar de possuir um gasto extra de espaço 
de memória, o algoritmo é indicado para aplicações que 
possuem restrição de tempo. Podemos observar isso pela sua 
complexidade. 
 
 
Terça-feira, 26 de Maio de 2020 20h29min05s BRT

Continue navegando

Outros materiais