Estrutura de Dados em C/C /2

Slides:



Advertisements
Apresentações semelhantes
Aula T-09 – BCC202 Listas (Parte 1) Túlio Toffolo www. decom. ufop
Advertisements

Katia S. Guimarães QUICKSORT Katia S. Guimarães
Solved Exercises 1. Finding the Peak. Let A= a1,…,an be a sequence of n numbers with the following property: there is p in {1,…,n} for which (i) the.
05/08/2011 Professor Leomir J. Borba- –
Algoritmos de Ordenação
Profa. Dra. Ana Paula Appel
Principais famílias de algoritmos
Algoritmos para Projeção eliminando Duplicatas
1 MergeSort Seja uma lista A de n elementos. O algoritmo consiste das seguintes fases Dividir A em 2 sub-listas de tamanho n/2 Conquistar: ordenar cada.
Pesquisa em Memória Primária
David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
David Menotti Algoritmos e Estruturas de Dados I DECOM – UFOP
David Menotti Estruturas de Dados I DECOM – UFOP
HeapSort Filas de Prioridade – Heap
David Menotti Estruturas de Dados I DECOM – UFOP
Pesquisa em Memória Primária
David Menotti Estruturas de Dados I DECOM – UFOP
Algoritmos e Estruturas de Dados I
Ordenação Facilitar e aumentar a eficiência das operações de pesquisa sobre esses dados Pode ser crescente ou decrescente A seqüência de entrada, normalmente,
Ordenação Facilitar e aumentar a eficiência das operações de pesquisa sobre esses dados Pode ser crescente ou decrescente A seqüência de entrada, normalmente,
A FAST APRIORI implementation
Classificação (Ordenação) de dados
Métodos de Pesquisa: Seqüencial e Binária
Classificação de dados por Troca: QuickSort
Debian Gerência de Memória.
Corrente Eléctrica Alternada
Aplicação do QFD Para Desenvolver Produtos Estratégicos
Utilizando Meta-Design para Customização de Conteúdo
Marco Antonio Montebello Júnior
Algoritmos de Ordenação
Insertion Sort.
Aula prática 12 Listas Encadeadas
Algoritmos de Ordenação 4
Algoritmos de ordenação
Algoritmos de Busca Parte II
Cálculo Numérico Aula 8 – Sistemas de Equações Lineares / Parte 1
Paradigma de Divisão e Conquista
Prof. Guilherme Amorim 14/11/2013
Algoritmos e Estruturas de Dados II
Pesquisa em Memória Primária
Comparação entre os métodos de ordenação
Sistemas Operacionais
Aula 01 BCC202 - Estrutura de Dados I Túlio Toffolo
Árvore de Pesquisa Memória Secundária Engenharia de Computação - UFG.
Desempenho, Método de Shell, Quicksort
Complexidade de algoritmos e Classificação (Ordenação) de dados
SISTEMAS OPERACIONAIS
Universidade Católica de Pelotas Mestrado em Ciência da Computação
MERGE SORT DANIEL C. MERODE NAIROBI S. DE OLIVEIRA SEGURANÇA DA INFORMAÇÃO - ESTRUTURA DE DADOS C++
QuickSort Dividir: A[p…r] é particionado (reorganizado) em dois subvetores não vazios A[p…q] e A[q+1…r] tal que cada elemento de A[p…q] é menor ou igual.
Módulo I Capítulo 5: Vetores
SISTEMAS OPERACIONAIS I
Amostras pareadas / Independência com variâncias desconhecidas
Introdução à complexidade de algoritmos Luiz Gonzaga da Silveira Junior.
DCC 001 Programação de Computadores 2º Semestre de 2011
Métodos de Ordenação.
Algoritmos para o operador de Projeção AULA 19 – Parte II Profa. Sandra de Amo GBC053 – BCC.
ATAL – Prof. Jorge Figueiredo Ordenação AT AL Análise e Técnicas de Algoritmos Análise de Algoritmos de Ordenação.
Gabriel C.S. EDA0001 – TADS – 2013 UDESC – Joinville
Classificação Ordenação de Dados
Programação II Laboratório II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo - Transparências baseadas nos originais da Prof.
Sistemas de Arquivos. Alocação em memória – Problemas Quantidade Limitada de Informações Perda de informações quando o processo é terminado Vários processos.
Métodos de Ordenação Externa
Métodos de Pesquisa: Sequencial e Binária
Ordenação Professor Paulo Gomide 27 de outubro de 2015.
Classificação (Ordenação) de dados
Classificação (Ordenação) de dados. Roteiro Contextualização e definições sobre Classificação Métodos de Classificação de Dados.
Universidade Federal de Alagoas – Campus Arapiraca
Ordenação dos Elementos de um Vetor - Bubble Sort e Quick Sort .
Transcrição da apresentação:

Estrutura de Dados em C/C++ 2012/2 Quicksort Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Proposto por Hoare em 1960 e publicado em1962; Quicksort Proposto por Hoare em 1960 e publicado em1962; Considerado o algoritimo de ordenação mais rápido; Não existem dados que comprovem, mas provavelmente é o mais utilizado; Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Utiliza a técnica de “dividir para conquistar”; Quicksort - Cont  Utiliza a técnica de “dividir para conquistar”; Divide em duas partes menores com n elementos; Cada parte é ordenada independentemente; Os resultados são combinados produzindo um resultado final;  A parte mais delicada do método é o processo de partição; Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

É extremamente eficiente para ordenar arquivos de dados. Quicksort - Vantagens  É extremamente eficiente para ordenar arquivos de dados. Necessita de apenas uma pequena pilha como memória auxiliar. Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Sua implementação é muito delicada e difícil: Quicksort - Desvantagens O método não é estável. Sua implementação é muito delicada e difícil: Um pequeno erro pode levar a um resultado não desejado para algumas entradas de dados. Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Escolha arbitraria de um pivô x. Quicksort – A Função Escolha arbitraria de um pivô x. Percorrer o vetor a partir da esquerda até que A[i] ≥ x. Percorrer o vetor a partir da direita até que A[j] ≤ x. Troque A[i] com A[j]. Continue este processo até i e j se cruzarem. Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Os itens em A[esq], A[esq + 1], ..., v[j] são menores ou iguais a x; Quicksort – A Função No final : Os itens em A[esq], A[esq + 1], ..., v[j] são menores ou iguais a x; Os itens em A[i], v[i + 1], ..., A[dir] são maiores ou iguais a x. Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++

Referências http://homepages.dcc.ufmg.br/~cunha/teaching/20121/aeds2/quicksort.pdf http://www.cplusplus.com/forum/beginner/9388/ http://w3.ualg.pt/~hshah/ped/Aula%2014/Quick_final.html Eduardo Bueno e Thiago Mezzomo – Estrutura de Dados em C/C++