A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Registros (Estrutura de Dados Heterogêneas) 1 Estrutura de Dados Algoritmos de Ordenação.

Apresentações semelhantes


Apresentação em tema: "Registros (Estrutura de Dados Heterogêneas) 1 Estrutura de Dados Algoritmos de Ordenação."— Transcrição da apresentação:

1 Registros (Estrutura de Dados Heterogêneas) 1 Estrutura de Dados Algoritmos de Ordenação

2 Visão Global O conceito de um conjunto ordenado de elementos tem considerável impacto sobre nossa vida cotidiana. Exemplos: – Localizar um número telefônico em catálogo; – Procurar um livro em biblioteca tradicional ou virtual; – Saber qual o próximo documento a ser impresso pela impressora em um departamento da empresa; – Saber qual o próximo processo a ser executado pelo processador de uma máquina qualquer; etc...

3 Introdução Algoritmo de ordenação em ciência da computação é um algoritmo que coloca os elementos de uma dada sequência em uma certa ordem. Em outras palavras, efetua sua ordenação completa ou parcial.  Existem várias razões para se ordenar uma seqüência Uma delas é a possibilidade se acessar seus dados de modo mais eficiente.  Além de permitir seu agrupamento em classes e ainda a atualização de arquivos seqüenciais

4 Algoritmos de ordenação -1- Bubble sort -2- Selection Sort -3 – Insertion Sort -4 - Quick sort (vocês já viram) -5 - Shell sort (Pesquisa do aluno) -6 -Merge sort (Pesquisa do aluno) -7 - Radix sort (Pesquisa do aluno)

5 Bubble sort Compara dois elementos consecutivos de um vector e se o da esquerda é maior que o da direita trocam de posição. Quando existem trocas, os elementos maiores tendem a deslocar-se para a direita e os menores para a esquerda.

6 Exemplo – BubbleSort (1/3) Suponha que se deseja classificar em ordem crescente o seguinte vetor de chaves [28, 26, 30, 24, 25]. Primeira Varredura compara par (28, 26): troca compara par (28, 30): não troca compara par (30, 24): troca compara par (30, 25): troca Maior chave em sua posição definitiva fim da primeira varredura

7 Exemplo – BubbleSort (2/3) Vetor inicial de chaves [28, 26, 30, 24, 25]. Resultado do fim da primeira varredura Segunda Varredura compara par (26, 28) : não troca compara par (28, 24) : troca compara par (28, 25) : troca (não precisa comparar) fim da segunda varredura

8 Exemplo – BubbleSort (3/3) Vetor de chaves [28, 26, 30, 24, 25] a ser ordenado. Resultado do fim da segunda varredura Terceira Varredura compara par (26, 24) : troca compara par (26, 25) : troca (não precisa comparar) Fim da terceira varredura Durante a quarta varredura, nenhuma troca ocorrerá e a execução do algoritmo terminará.

9 Bubble sort - Implmentação private void bubblesort(int vetor[]) { int temp; boolean alterado = true; imprimir(vetor); while (alterado) { temp = 0; alterado = false; for (int j = 0; j < vetor.length - 1; j++) { if (vetor[j] > vetor[j + 1]) { temp = vetor[j + 1]; vetor[j + 1] = vetor[j]; vetor[j] = temp; alterado = true; } imprimir(vetor); }

10 Conclusões Os algoritmos de ordenação por bolha: → São muito simples → Eficazes apenas para uma pequena quantidade de dados. ■ R ealiza um grande número de comparações pelo vetor para ser ordenado;


Carregar ppt "Registros (Estrutura de Dados Heterogêneas) 1 Estrutura de Dados Algoritmos de Ordenação."

Apresentações semelhantes


Anúncios Google