Baixe o app para aproveitar ainda mais
Prévia do material em texto
ESTRUTURA DE DADOS 4a aula Lupa Vídeo PPT MP3 Exercício: CCT0260_EX_A4_201702472027_V4 Matrícula: Aluno(a): Data: 09/10/2017 08:59:09 (Finalizada) 1a Questão (Ref.: 201702547004) Fórum de Dúvidas (1) Saiba (0) Qual a importância de se entender a "ordenação" de dados ? A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se conhecimento para manter outros problemas. A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se conhecimento para resolver outros problemas. A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se conhecimento para resolver outros problemas. A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se conhecimento para manter outros problemas. A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se conhecimento para manter outros problemas. Gabarito Comentado 2a Questão (Ref.: 201703135640) Fórum de Dúvidas (1 de 1) Saiba (0) Seja a seguinte função de ordenação: void ordena( int n, int v[]) { int i, j, x; for (j = 1; j < n; ++j) { x = v[j]; for (i = j-1; i >= 0 && v[i] > x; --i) v[i+1] = v[i]; v[i+1] = x; } } Pode-se dizer que é uma função de ordenação: Que utiliza o método inserção e realiza uma ordenação crescente nos elementos do vetor v. Que utiliza o método seleção e realiza uma ordenação decrescente nos elementos do vetor v. Que utiliza o método inserção e realiza uma ordenação decrescente nos elementos do vetor v. Que utiliza o método seleção e realiza uma ordenação crescente nos elementos do vetor v. Que utiliza o método bolha e realiza uma ordenação crescente nos elementos do vetor v. 3a Questão (Ref.: 201702749614) Fórum de Dúvidas (1) Saiba (0) Entre os diversos algoritmos de pesquisa existentes, certamente os mais famosos são os da pesquisa sequencial e o da pesquisa binária. A busca ou pesquisa sequencial pode ser aplicada em vetores independente destes estarem ordenados, entretanto a busca binária só se aplica em vetores ordenados. Seja o vetor A= {10,35,41,55,69,70,98}, suponha que o número 70 foi pesquisado pelo algoritmo da busca sequencial e também pelo algoritmo da busca binária, ambos algoritmos realizam testes nos elementos do vetor até achar o que procuram ou definirem que o elemento não se encontra no vetor. Sendo assim marque a alternativa que expressa o número de testes realizados pela busca sequencial e o número de testes realizados pela busca binária, respectivamente, até encontrarem o 70. 6 e 2 7 e 1 6 e 1 6 e 4 5 e 5 Gabarito Comentado 4a Questão (Ref.: 201702547349) Fórum de Dúvidas (1 de 1) Saiba (0) Os métodos de ordenação são muito utilizados para facilitar a recuperação posterior de itens ordenados. Existem vários métodos de ordenação, por esse motivo, assinale corretamente a alternativa que mostra o nome do método que utiliza a estratégia de ordenação por trocas de vizinhos e é considerado o método mais simples. Seleção Binária Inserção Hash Bolha Gabarito Comentado 5a Questão (Ref.: 201702550174) Fórum de Dúvidas (1) Saiba (0) Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho de programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira ocorrência), em um conjunto de elementos de dados armazenado em uma estrutura de acesso indexado e aleatório. Selecione a opção correspondente ao algoritmo utilizado, no programa, para a referida pesquisa: int busca(float v[], float valor, int n) { int ini = 0, fim = n -1, meio; while (ini <= fim) { meio = (ini + fim)/2; if (v[meio] == valor) return meio; if (valor < v[meio]) fim = meio -1; else ini = meio+1; } return -1; } pesquisa cadeias indexada pesquisa binária pesquisa sequencial pesquisa indexada pesquisa de cadeias Gabarito Comentado 6a Questão (Ref.: 201703135642) Fórum de Dúvidas (1) Saiba (0) Qual papel do for mais interno na função ordena abaixo ? void ordena( int n, int v[]) { int i, j, x; for (j = 1; j < n; ++j) { x = v[j]; for (i = j-1; i >= 0 && v[i] > x; --i) v[i+1] = v[i]; v[i+1] = x; } } Encontrar o menor valor v[j] que deve ser inserido em v[0..j-1]. Encontrar o valor de v[j] deve em v[0..j-1]. Encontrar o ponto onde v[j] deve ser inserido em v[0..j-1]. Encontrar o maior valor de x que deve ser inserido em v[0..j-1]. Encontrar o elmento a ser eliminado do vetor Gabarito Comentado 7a Questão (Ref.: 201702546846) Fórum de Dúvidas (1 de 1) Saiba (0) O seguinte trecho de programa abaixo representa qual tipo de estrutura de ordenação? void ordenar(float v[], int n) // n é o no. de elementos em v { int i , // índice aux, // auxiliar para troca trocou = true, fim = n - 1; while (trocou) { trocou = false; // sinaliza que é falso que trocou for (i = 0; i < fim; i++) { if (v[i] > v[i+1]) { aux = v[i]; v[i] = v[i+1]; v[i+1] = aux; // sinaliza que é verdadeiro que trocou trocou = true; } // fim if } // fim for fim--; // decrementa o fim } // fim while } // fim da função Shellsort Bublesort Heapsort Mergesort Quicksort Gabarito Comentado 8a Questão (Ref.: 201702547264) Fórum de Dúvidas (1 de 1) Saiba (0) O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de seus elementos o nome e a nota obtida pelo candidato. Deseja-se que este vetor seja ordenado pela nota, em ordem decrescente. Sendo o vetor pequeno (poucos elementos), o programador responsável por desenvolver este algoritmo, escolheu um método de ordenação que executa os seguintes passos: Selecione candidato com maior nota entre todos e troque-o com o candidato que está na primeira posição do vetor; Selecione o segundo maior e troque-o com o candidato que está na segunda posição; Os passos descritos anteriormente são seguidos para a terceira nota, quarta nota e assim por diante até que reste apenas um candidato. O algoritmo utilizado pelo programador trata-se do método de ordenação denominado: Bolha Inserção Heapsort Quicksort Seleção Gabarito Comentado
Compartilhar