SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Merge e Quick
Michel Alves dos Santos
Társis Wanderley Tolêdo
Universidade Federal do Estado de Alagoas
Instituto de Computação – Ciência da Computação
Projeto e Análise de Algoritmos – Prof. Sílvio Chagas
Novembro de 2009
Slide 2
Geração de Números Aleatórios e Algoritmos de Ordenação
True Random Number Generators
Pseudo-Random Number Generators
O emprego de TRNGs é mais adequado as loterias, jogos e segurança [geração de chaves criptografadas],
enquanto os PRNGs são largamente utilizados em simulações e modelagem computacional [Análise Visual,
Simulação Científica de Infecção Viral, Algoritmos Evolutivos, etc.]
PAA - Projeto e Análise de Algoritmos
Slide 3
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
• Método da Congruência Linear
• Outros Métodos PRNG [R250 e Mersenne Twistter]
• Distribuição, Ordem e o Efeito ‘Tartaruga’
Tabela com os períodos de alguns métodos de geração de números aleatórios.
Os números aleatórios são necessários em cálculo numérico, quando é necessário que não existam correlações
entre eventos independentes. São utilizados no método de Monte Carlo (determinação da área de um lago)
[1], em dinâmica de partículas com dissipação [2] para garantir que as forças entre as partículas sejam
independentes e em criptografia [3].
[2]
[1]
[3]
Slide 4
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
MERGE SORT – ORDENAÇÃO POR INTERCALAÇÃO
John von Neumann.
28 de dezembro de 1903
(Budapeste - Hungria) –
8 de fevereiro de 1957
(Washington, D.C.- EUA)
Algoritmo criado por von Neumann
Complexidade de tempo : Θ(nlogn)
Complexidade de espaço : Θ(n)
Algoritmo do tipo “Dividir para Conquistar”
Idéia Básica -> Dividir, Conquistar, Combinar
Desvantagem : Alto consumo de memória, devido
a série de chamadas recursivas.
Slide 5
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
MERGE SORT – ORDENAÇÃO POR INTERCALAÇÃO
7 5 2 4 1 6 3 0
7 5 2 4 1 6 3 0
2 47 5 1 6 3 0
27 45 31 06
Dividir
entrada
0 1 2 3 4 5 6 7
2 4 5 7 0 1 3 6
2 45 7 1 6 0 3
27 45 31 06
Combinar
saída
Slide 6
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
QUICK SORT – ORDENAÇÃO RÁPIDA
• Algoritmo criado por Sir Charles Antony Richard
Hoare, em 1960, publicado em 1962.
• Algoritmo de ordenação não-estável
• Complexidade de tempo : Θ(nlogn) [melhor caso/caso médio]
• Complexidade de tempo : Θ(n^2) [no pior caso]
• Complexidade de espaço : Θ(logn) [melhor caso e caso médio]
• Complexidade de espaço : Θ(n) [pior caso]
• Algoritmo do tipo “Dividir para Conquistar”
• Idéia Básica -> Algoritmo do tipo dividir para
conquistar baseado em particionamento porém sem a
fase de combinação como o merge sort.
Desvantagem : No pior caso se comporta como um
algoritmo quadrático.
Charles Antony
Richard Hoare.
11 de janeiro de 1934
(Colombo – Sri Lanka)
Slide 7
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
QUICK SORT – ORDENAÇÃO RÁPIDA – Idéia Básica
13 81 92
43
65 31 57
26 75 0
Seleciona um Pivô
81
92
75
13 43
31
5726
0
13 81 9243 6531 5726 750
81 927513 4331 57260 65
65
quicksort quicksort
13 81 92
43
65 31 57
26 75 0
Executa Particionamento
Slide 8
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
QUICK SORT – ORDENAÇÃO RÁPIDA - Particionamento
Particionamento e Recuperação – melhor caso e caso médio
Slide 9
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
QUICK SORT – ORDENAÇÃO RÁPIDA – Pior caso
O pior caso para o Quick Sort
ocorre quando a entrada já se
encontra ordenada.
Torna-se tão “eficiente” quanto um
algoritmo quadrático convencional.
Nesse caso a profundidade da árvore
é de N-1 e não O(logn), pois a
mesma não é balanceada.
Finalmente sua complexidade será
dada por N(N-1)/2, ou seja, O(N^2)
Slide 10
Geração de Números Aleatórios e Algoritmos de Ordenação
PAA - Projeto e Análise de Algoritmos
QUADRO DE DESEMPENHO
Quadro de avaliação entre os algoritmos de ordenação, levando em conta o número de comparações, trocas
e outras operações necessárias a resolução do problema, realizadas em tempo constante. Abaixo
visualizamos um quadro de complexidade média de implementação de alguns algoritmos de
ordenação(excluindo linhas em branco e de comentários).
Slide 11
Geração de Números Aleatórios e Algoritmos de Ordenação
Screenshots & Testes – Bubble Versão 1
PAA - Projeto e Análise de Algoritmos
Slide 12
Geração de Números Aleatórios e Algoritmos de Ordenação
Screenshots & Testes – Bubble Versão 2
PAA - Projeto e Análise de Algoritmos
Slide 13
Geração de Números Aleatórios e Algoritmos de Ordenação
Screenshots & Testes – Shaker Sort
PAA - Projeto e Análise de Algoritmos
Slide 14
Geração de Números Aleatórios e Algoritmos de Ordenação
Screenshots & Testes – Merge Sort
PAA - Projeto e Análise de Algoritmos
Slide 15
Geração de Números Aleatórios e Algoritmos de Ordenação
• Screenshots & Testes – Quick Sort [Pivoteamento Central]
PAA - Projeto e Análise de Algoritmos

Weitere ähnliche Inhalte

Ähnlich wie Merge e Quick Sort

(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06Norton Trevisan Roman
 
SysSorting Professional
SysSorting ProfessionalSysSorting Professional
SysSorting ProfessionalMichel Alves
 
Introdução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosIntrodução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosNécio de Lima Veras
 
Aula 7 - MASP - ferramentas da qualidade - 2019-1
Aula 7   - MASP -  ferramentas da qualidade - 2019-1Aula 7   - MASP -  ferramentas da qualidade - 2019-1
Aula 7 - MASP - ferramentas da qualidade - 2019-1IFMG
 
Atividade pratica supervisionada construção de algoritimo
Atividade pratica supervisionada  construção de algoritimoAtividade pratica supervisionada  construção de algoritimo
Atividade pratica supervisionada construção de algoritimoFelipe Dias Guimarães
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoGustavo Carvalho
 
Apresentação 20130805 algoritmos
Apresentação 20130805 algoritmos Apresentação 20130805 algoritmos
Apresentação 20130805 algoritmos João moreira
 
ordenacao shellsort quicksort em C
ordenacao shellsort quicksort em Cordenacao shellsort quicksort em C
ordenacao shellsort quicksort em CAlessandro Trevisan
 
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptxrapc987
 
Ferramentas da qualidade 2.pptx
Ferramentas da qualidade  2.pptxFerramentas da qualidade  2.pptx
Ferramentas da qualidade 2.pptxMidoriPitanga2
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDSPablo Silva
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptssuserd654cb1
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptssuserd654cb1
 

Ähnlich wie Merge e Quick Sort (20)

Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06
 
SysSorting Professional
SysSorting ProfessionalSysSorting Professional
SysSorting Professional
 
Aula 3-lógica.pptx
Aula 3-lógica.pptxAula 3-lógica.pptx
Aula 3-lógica.pptx
 
Introdução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmosIntrodução à analise e complexidade de algoritmos
Introdução à analise e complexidade de algoritmos
 
0001
00010001
0001
 
000003 complexidade
000003 complexidade000003 complexidade
000003 complexidade
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
P910Aula07
P910Aula07P910Aula07
P910Aula07
 
Aula 7 - MASP - ferramentas da qualidade - 2019-1
Aula 7   - MASP -  ferramentas da qualidade - 2019-1Aula 7   - MASP -  ferramentas da qualidade - 2019-1
Aula 7 - MASP - ferramentas da qualidade - 2019-1
 
Atividade pratica supervisionada construção de algoritimo
Atividade pratica supervisionada  construção de algoritimoAtividade pratica supervisionada  construção de algoritimo
Atividade pratica supervisionada construção de algoritimo
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenação
 
Apresentação 20130805 algoritmos
Apresentação 20130805 algoritmos Apresentação 20130805 algoritmos
Apresentação 20130805 algoritmos
 
ordenacao shellsort quicksort em C
ordenacao shellsort quicksort em Cordenacao shellsort quicksort em C
ordenacao shellsort quicksort em C
 
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx
2 - Algoritmos e Estruturas de Dados - Algoritmo.pptx
 
Ferramentas da qualidade 2.pptx
Ferramentas da qualidade  2.pptxFerramentas da qualidade  2.pptx
Ferramentas da qualidade 2.pptx
 
Conceitos básicos de AEDS
Conceitos básicos de AEDSConceitos básicos de AEDS
Conceitos básicos de AEDS
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Analise Algoritmos
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.ppt
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).ppt
 

Mehr von Michel Alves

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseMichel Alves
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesMichel Alves
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresMichel Alves
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesMichel Alves
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel FunctionsMichel Alves
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceMichel Alves
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - ResultsMichel Alves
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseMichel Alves
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexMichel Alves
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationMichel Alves
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsMichel Alves
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMichel Alves
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in RMichel Alves
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel PrototypeMichel Alves
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh PlotMichel Alves
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesMichel Alves
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogMichel Alves
 

Mehr von Michel Alves (20)

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU Use
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color Palettes
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color Measures
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment Indexes
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel Functions
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV Space
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - Results
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin Noise
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM Index
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and Reports
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJ
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in R
 
Sigmoid Curve Erf
Sigmoid Curve ErfSigmoid Curve Erf
Sigmoid Curve Erf
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel Prototype
 
Cosine Curve
Cosine CurveCosine Curve
Cosine Curve
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh Plot
 
Triangle Plot
Triangle PlotTriangle Plot
Triangle Plot
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video Slides
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function Catalog
 

Kürzlich hochgeladen

Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxBiancaNogueira42
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...Martin M Flynn
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundonialb
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESpatriciasofiacunha18
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamentalgeone480617
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbyasminlarissa371
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 anoAdelmaTorres2
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxDeyvidBriel
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasRicardo Diniz campos
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxacaciocarmo1
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoSilvaDias3
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfEyshilaKelly1
 

Kürzlich hochgeladen (20)

Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptxAula 13 8º Ano Cap.04 Revolução Francesa.pptx
Aula 13 8º Ano Cap.04 Revolução Francesa.pptx
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
 
geografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundogeografia 7 ano - relevo, altitude, topos do mundo
geografia 7 ano - relevo, altitude, topos do mundo
 
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕESPRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
PRÉ-MODERNISMO - GUERRA DE CANUDOS E OS SERTÕES
 
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino FundamentalCartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
Cartilha 1º Ano Alfabetização _ 1º Ano Ensino Fundamental
 
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
v19n2s3a25.pdfgcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecas
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptx
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basico
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdf
 

Merge e Quick Sort

  • 1. Merge e Quick Michel Alves dos Santos Társis Wanderley Tolêdo Universidade Federal do Estado de Alagoas Instituto de Computação – Ciência da Computação Projeto e Análise de Algoritmos – Prof. Sílvio Chagas Novembro de 2009
  • 2. Slide 2 Geração de Números Aleatórios e Algoritmos de Ordenação True Random Number Generators Pseudo-Random Number Generators O emprego de TRNGs é mais adequado as loterias, jogos e segurança [geração de chaves criptografadas], enquanto os PRNGs são largamente utilizados em simulações e modelagem computacional [Análise Visual, Simulação Científica de Infecção Viral, Algoritmos Evolutivos, etc.] PAA - Projeto e Análise de Algoritmos
  • 3. Slide 3 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos • Método da Congruência Linear • Outros Métodos PRNG [R250 e Mersenne Twistter] • Distribuição, Ordem e o Efeito ‘Tartaruga’ Tabela com os períodos de alguns métodos de geração de números aleatórios. Os números aleatórios são necessários em cálculo numérico, quando é necessário que não existam correlações entre eventos independentes. São utilizados no método de Monte Carlo (determinação da área de um lago) [1], em dinâmica de partículas com dissipação [2] para garantir que as forças entre as partículas sejam independentes e em criptografia [3]. [2] [1] [3]
  • 4. Slide 4 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos MERGE SORT – ORDENAÇÃO POR INTERCALAÇÃO John von Neumann. 28 de dezembro de 1903 (Budapeste - Hungria) – 8 de fevereiro de 1957 (Washington, D.C.- EUA) Algoritmo criado por von Neumann Complexidade de tempo : Θ(nlogn) Complexidade de espaço : Θ(n) Algoritmo do tipo “Dividir para Conquistar” Idéia Básica -> Dividir, Conquistar, Combinar Desvantagem : Alto consumo de memória, devido a série de chamadas recursivas.
  • 5. Slide 5 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos MERGE SORT – ORDENAÇÃO POR INTERCALAÇÃO 7 5 2 4 1 6 3 0 7 5 2 4 1 6 3 0 2 47 5 1 6 3 0 27 45 31 06 Dividir entrada 0 1 2 3 4 5 6 7 2 4 5 7 0 1 3 6 2 45 7 1 6 0 3 27 45 31 06 Combinar saída
  • 6. Slide 6 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos QUICK SORT – ORDENAÇÃO RÁPIDA • Algoritmo criado por Sir Charles Antony Richard Hoare, em 1960, publicado em 1962. • Algoritmo de ordenação não-estável • Complexidade de tempo : Θ(nlogn) [melhor caso/caso médio] • Complexidade de tempo : Θ(n^2) [no pior caso] • Complexidade de espaço : Θ(logn) [melhor caso e caso médio] • Complexidade de espaço : Θ(n) [pior caso] • Algoritmo do tipo “Dividir para Conquistar” • Idéia Básica -> Algoritmo do tipo dividir para conquistar baseado em particionamento porém sem a fase de combinação como o merge sort. Desvantagem : No pior caso se comporta como um algoritmo quadrático. Charles Antony Richard Hoare. 11 de janeiro de 1934 (Colombo – Sri Lanka)
  • 7. Slide 7 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos QUICK SORT – ORDENAÇÃO RÁPIDA – Idéia Básica 13 81 92 43 65 31 57 26 75 0 Seleciona um Pivô 81 92 75 13 43 31 5726 0 13 81 9243 6531 5726 750 81 927513 4331 57260 65 65 quicksort quicksort 13 81 92 43 65 31 57 26 75 0 Executa Particionamento
  • 8. Slide 8 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos QUICK SORT – ORDENAÇÃO RÁPIDA - Particionamento Particionamento e Recuperação – melhor caso e caso médio
  • 9. Slide 9 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos QUICK SORT – ORDENAÇÃO RÁPIDA – Pior caso O pior caso para o Quick Sort ocorre quando a entrada já se encontra ordenada. Torna-se tão “eficiente” quanto um algoritmo quadrático convencional. Nesse caso a profundidade da árvore é de N-1 e não O(logn), pois a mesma não é balanceada. Finalmente sua complexidade será dada por N(N-1)/2, ou seja, O(N^2)
  • 10. Slide 10 Geração de Números Aleatórios e Algoritmos de Ordenação PAA - Projeto e Análise de Algoritmos QUADRO DE DESEMPENHO Quadro de avaliação entre os algoritmos de ordenação, levando em conta o número de comparações, trocas e outras operações necessárias a resolução do problema, realizadas em tempo constante. Abaixo visualizamos um quadro de complexidade média de implementação de alguns algoritmos de ordenação(excluindo linhas em branco e de comentários).
  • 11. Slide 11 Geração de Números Aleatórios e Algoritmos de Ordenação Screenshots & Testes – Bubble Versão 1 PAA - Projeto e Análise de Algoritmos
  • 12. Slide 12 Geração de Números Aleatórios e Algoritmos de Ordenação Screenshots & Testes – Bubble Versão 2 PAA - Projeto e Análise de Algoritmos
  • 13. Slide 13 Geração de Números Aleatórios e Algoritmos de Ordenação Screenshots & Testes – Shaker Sort PAA - Projeto e Análise de Algoritmos
  • 14. Slide 14 Geração de Números Aleatórios e Algoritmos de Ordenação Screenshots & Testes – Merge Sort PAA - Projeto e Análise de Algoritmos
  • 15. Slide 15 Geração de Números Aleatórios e Algoritmos de Ordenação • Screenshots & Testes – Quick Sort [Pivoteamento Central] PAA - Projeto e Análise de Algoritmos