Baixe o app para aproveitar ainda mais
Prévia do material em texto
Curso ESTRUTURA DE DADOS PTA Teste ATIVIDADE 2 (A2) • Pergunta 1 1 em 1 pontos Um algoritmo é uma sequência de passos que resolve algum problema ou alcança algum objetivo. E uma estrutura de dados definem como as informações serão organizadas na memória. Existem métodos ordenação que reduz o uso de memória e outros que aumentam o volume de memória utilizado. Sendo assim, analise a alternativa do método que possui como desvantagem um gasto extra de espaço de memória. Resposta Selecionada: . Merge Sort. Resposta Correta: . Merge Sort. Feedback da resposta: Resposta correta. O Algoritmo é estável, no qual não altera a ordem de dados iguais, e é indicado para aplicações que possuem restrição de tempo. Porém, uma grande desvantagem é possuir um gasto extra de espaço de memória • Pergunta 2 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 3 1 em 1 pontos Algoritmos são desenvolvidos para facilitar a nossa vida e fornecer respostas de maneira rápida e eficiente. Podemos descrever a complexidade que um algoritmo possui analisando as funções existentes no código. O algoritmo Quick Sort possui complexidade ______________ no melhor caso, ___________ no caso médio e _____________ no pior caso. Assinale a alternativa que imprima a complexidade dos algoritmos na ordem correta. Resposta Selecionada: .O (n log n), O (n log n), O (n 2). Resposta Correta: .O (n log n), O (n log n), O (n2). Feedback da resposta: Resposta correta. O Algoritmo Quick-Sort trabalha com eficiência e com uma base de dados grande, dividindo o array em pequenos arrays com base em um elemento chamado pivô. • Pergunta 4 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. • Pergunta 5 1 em 1 pontos O método de ordenação Insertion Sort, também conhecido como método de inserção, é classificado como um método simples. O funcionamento do método é percorrer os elementos e à medida que avança vai ordenando. Utilize esse algoritmo para organizar em ordem crescente um array unidimensional, contendo os números [5,3,8,2,6]. Assinale a alternativa a seguir que apresente a quantidade de trocas que serão realizados para ordenar o array utilizando o algoritmo Insertion Sort. Resposta Selecionada: .5 trocas. Resposta Correta: .5 trocas. Feedback da resposta: Resposta correta. O algoritmo Insertion Sort se limita em a cada passo a partir do segundo elemento selecionar o próximo item da sequência e colocá-lo no local apropriado. • Pergunta 6 1 em 1 pontos As estruturas de dados são aplicadas 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. O método utilizado no algoritmo abaixo é eficiente para resolver problemas com poucos dados e a sua complexidade é O (n) no melhor caso e O (n 2) no pior caso. Analise o código abaixo sobre o método de ordenação citado acima. Qual a alternativa que corresponde aos conceitos de ordenação descritos acima e ao código na imagem representam o algoritmo de ordenação: Resposta Selecionada: . Insertion Sort. Resposta Correta: . Insertion Sort. Feedback da resposta: Resposta correta. O algoritmo é estável, mas possui um alto custo de movimentação dos elementos do array. • Pergunta 7 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 8 1 em 1 pontos O método de ordenação Quick Sort, é classificado como um método complexo e não estável. Nesse algoritmo se faz necessária a escolha de um elemento como pivô. Utilize esse algoritmo para ordenar um array unidimensional, contendo os números [5,2,9,6,3] em ordem crescente. Considere o número 9 e, na sequência, o número 3 como pivô. Assinale a alternativa a seguir que apresente a quantidade de trocas que serão realizados para ordenar o array utilizando o algoritmo Quick Sort. Resposta Selecionada: . 3 trocas. Resposta Correta: . 3 trocas. Feedback da resposta: Resposta correta. O algoritmo utiliza a estratégia dividir para conquistar e quando ele vai reorganizando os dados ocorre a troca dos elementos com o pivô. • Pergunta 9 1 em 1 pontos A complexidade de um algoritmo se dá por meio das funções que são implementadas no código. Cada laço de repetição aumenta o tempo de execução da aplicação. Assinale a complexidade do melhor caso do algoritmo de ordenação Bubble Sort. Resposta Selecionada: . O(n). Resposta Correta: . O(n). Feedback da resposta: Resposta correta. O Algoritmo é um método mais simples, de fácil implementação e apesar da sua eficiência diminuir `a medida que os dados aumentam, ainda é um dos algoritmos mais utilizados para ordenação. • Pergunta 10 1 em 1 pontos Cada algoritmo possui uma complexidade para resolver problemas, no qual é analisado as funções implementadas no algoritmo. Assinale a complexidade do caso médio do algoritmo de ordenação Insertion-Sort. Resposta Selecionada: . O(n²). Resposta Correta: . O(n²). Feedback da resposta: Resposta correta. O Algoritmo tem como vantagem ser estável, no qual não altera a ordem dos dados iguais e pode organizar os elementos assim que os recebe, como quando uma pessoa está organizando as cartas em um jogo de baralho
Compartilhar