Prévia do material em texto
PERGUNTA 1 1. 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. .Bubble Sort. . Insertion Sort. . Selection Sort. . Quick Sort. . Merge Sort. 1 pontos PERGUNTA 2 1. 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. . O (n), O (n log n), O (n log n).. .O (n log n), O (n log n), O (n2). . O (n log n), O (n log n), O (n log n). .O (n), O (n log n), O (n2). .O (n log n), O (n), O (n2). 1 pontos PERGUNTA 3 1. O método de ordenação abaixo, é um algoritmo mais complexo e “utiliza a estratégia dividir para conquistar. Assim, a sua ideia é escolher um elemento qualquer chamado pivô, e a partir desse pivô o array é organizado”. (ZIVIANI, Nivio. Projeto de Algoritmos: com implementações em JAVA e C++. Cengage Learning Editores, 2012.). Analise a imagem abaixo. Fonte: https://images.deepai.org/glossary-terms/a5228ea07c794b468efd1b7f758b9ead/Quicksort.png Assinale a alternativa que corresponde ao funcionamento método de ordenação mostrado na imagem acima. . Bubble Sort. . Insertion Sort. . Selection Sort. . Quick Sort. . Merge Sort. 1 pontos PERGUNTA 4 1. 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? .selection sort, merge sort, array, insertion sort. .margie sort, boolean sort, quick sort. .bubble sort, selection sort, merge sort, quick sort. .chell sort, selection sort, bubble sort. .boolean sort, selection sort, insertion sort. 1 pontos PERGUNTA 5 1. 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. . O(n²). . O(n). . O(n log n). . O(log n); . O(1). 1 pontos PERGUNTA 6 1. 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. . O(n²). . O(n). . O(n log n). . O(log n); . O(n3) 1 pontos PERGUNTA 7 1. 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. . O(n²). . O(n). . O(n log n). . O(log n); . O(1). 1 pontos PERGUNTA 8 1. A complexidade de um algoritmo pode ser calculada por meio da complexidade temporal e espacial, sendo na primeira o cálculo do tempo que as instruções levam para serem executadas (utilizando as funções), e na sequência, o espaço na memória que o algoritmo utiliza. Assinale a alternativa correta que descreva o algoritmo de ordenação que contêm como complexidade O( n 2) para o melhor caso, médio caso e pior caso. .Bubble Sort. . Merge Sort. . Insertion Sort. . Quick Sort. .Selection Sort. 1 pontos PERGUNTA 9 1. 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). .V, V, V, F. .F, F, V, V. .V, F, V, F. .F, V, V, F. .V, F, F, F. 1 pontos PERGUNTA 10 1. Existem algoritmos de ordenação mais complexos e algoritmos mais simples de implementar. Os algoritmos Merge e Quick são considerados algoritmos complexos, sendo mais eficientes e executam as aplicações em tempo menor que os algoritmos mais simples. Analise as afirmativas abaixo sobre os algoritmos de ordenação: I. Os métodos Quick Sort e Merge Sort utilizam a estratégia dividir para conquistar. II. O método de ordenação Quick Sort aloca o maior elemento para o final do array para garantir que os dados fiquem em ordem decrescente. III. No pior caso, o algoritmo bolha executa n 2 operações para ordenar um array de n elementos. IV. O algoritmo de ordenação por inserção possui o menor número de trocas quando o array está ordenado de forma inversa à ordem do procedimento. Julgue e assinale se as afirmativas acima são verdadeiras (V) ou falsas (F). . V, F, V, F. .V, F, V, V. . F, V, V, V. . V, V, V, F. . F, F, V, V.