Fusão (Intercalação) Exemplo. Exemplo. Exemplo. Exemplo. Ordenação por Fusão

Documentos relacionados
Lista de Exercícios - Otimização Linear Profa. Maria do Socorro DMAp/IBILCE/UNESP. Método Simplex

Busca. Busca. Exemplo. Exemplo. Busca Linear (ou Seqüencial) Busca em Vetores

XI OMABC NÍVEL O lugar geométrico dos pontos P x, y cuja distância ao ponto Q 1, 2 é igual a y é uma:

6.2 Sabendo que as matrizes do exercício precedente representam transformações lineares 2 2

Capítulo 4. Vetores. Recursos com copyright incluídos nesta apresentação:

Obtendo uma solução básica factível inicial. Método Simplex duas fases

1ª Lista de Exercícios - GABARITO

Muitas vezes, conhecemos a derivada de uma função, y = f (x) = F(x), e queremos encontrar a própria função f(x).

Escalonamento de processos num sistema computacional multi-processo e uni-processador

Método de Gauss-Seidel

AUTOVALORES E AUTOVETORES

Solução da Terceira Lista de Exercícios Profa. Carmem Hara

Aula 1b Problemas de Valores Característicos I

Escola Secundária com 3º ciclo D. Dinis 10º Ano de Matemática A. 6º Teste de avaliação versão2. Grupo I

6º Teste de avaliação versão1. Grupo I

Universidade Federal de Alfenas

4. APLICAÇÃO DA PROTEÇÃO DIFERENCIAL À PROTEÇÃO DE TRANSFORMADORES DE POTÊNCIA

TP062-Métodos Numéricos para Engenharia de Produção Sistemas Lineares Métodos Iterativos

Método de Gauss- Seidel

ANÁLISE DE ESTRUTURAS I

Métodos Numéricos Sistemas Lineares Métodos Iterativos. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina

1.6- MÉTODOS ITERATIVOS DE SOLUÇÃO DE SISTEMAS LINEARES PRÉ-REQUISITOS PARA MÉTODOS ITERATIVOS

Notas de Aula de Física

Sistemas Lineares Aplicações Veja a resolução no final

6 Modelo Econométrico e Resultados Principais

Primeira Prova de Mecânica A PME /08/2012

MÉTODO DE HOLZER PARA VIBRAÇÕES TORCIONAIS

Revisão de Matemática Simulado 301/302. Fatorial. Análise combinatória

1a Verificação Refino dos Aços I EEIMVR-UFF, Setembro de 2011 Prova A

CAP. VI Integração e diferenciação numéricas. 1. Introdução

Complexidade de Algoritmos

3 MATERIAIS, PROCEDIMENTOS EXPERIMENTAIS e ANÁLISE DE DADOS.

Angela Nieckele PUC-Rio DIFUSÃO

A Lei das Malhas na Presença de Campos Magnéticos.

Método de Análise Nodal

Prova elaborada pelo prof. Octamar Marques. Resolução da profa. Maria Antônia Conceição Gouveia.

3.1 Introdução Forma Algébrica de S n Forma Matricial de Sn Matriz Aumentada ou Matriz Completa do Sistema

Numa progressão aritmética de 6 termos a soma dos termos de ordem ímpar é 6 e a soma dos termos de ordem par é 15. Calcule o sexto termo dessa PA.

Fernando Nogueira Dualidade 1

RESOLUÇÃO DA PROVA DE MATEMÁTICA UNICAMP-FASE RESOLUÇÃO: PROFA. MARIA ANTÔNIA C. GOUVEIA

SIMETRIA MOLECULAR E TEORIA DE GRUPOS

Vitamina A Vitamina B Vitamina C Alimento Alimento Alimento

Vectores Complexos. Prof. Carlos R. Paiva

Proposta de resolução do Exame Nacional de Matemática A 2016 (1 ạ fase) GRUPO I (Versão 1)

AULA 7 EFICIÊNCIA E EFETIVIDADE DE ALETAS

SOLUÇÃO DE SISTEMAS DE EQUAÇÕES LINEARES

3.3 Ordenação por Heap (Heapsort)

Universidade do Vale do Rio dos Sinos UNISINOS Programa de Pós-Graduação em Engenharia Mecânica. Ajuste de equações

INCERTEZA. Notas complementares. Preferências de loterias espaço de escolhas é composto por loterias

Eixos e árvores Projeto para eixos: restrições geométricas. Aula 4. Elementos de máquinas 2 Eixos e árvores

xy 1 + x 2 y + x 1 y 2 x 2 y 1 x 1 y xy 2 = 0 (y 1 y 2 ) x + (x 2 x 1 ) y + (x 1 y 2 x 2 y 1 ) = 0

Em muitas situações duas ou mais variáveis estão relacionadas e surge então a necessidade de determinar a natureza deste relacionamento.

POLINÔMIOS. Definição: Um polinômio de grau n é uma função que pode ser escrita na forma. n em que cada a i é um número complexo (ou

Resolução Numérica de Sistemas Lineares Parte I

Hewlett-Packard O ESTUDO DO PONTO. Aulas 01 a 05. Elson Rodrigues, Gabriel Carvalho e Paulo Luiz

PARTE I. Figura Adição de dois vetores: C = A + B.

Gramáticas Regulares. Capítulo Gramáticas regulares

CAPÍTULO IV DIFERENCIAÇÃO NUMÉRICA

k 0 4 n NOTAS DE AULA A Integral Definida

Propriedades das Linguagens Regulares

Hewlett-Packard O ESTUDO DA RETA. Aulas 01 a 05. Elson Rodrigues, Gabriel Carvalho e Paulo Luiz

2 Teoria de membranas elásticas

VETORES. Problemas Resolvidos

Módulo de Matrizes e Sistemas Lineares. Operações com Matrizes

ÁLGEBRA LINEAR Equações Lineares na Álgebra Linear EQUAÇÃO LINEAR SISTEMA LINEAR GEOMETRIA DA ESQUAÇÕES LINEARES RESOLUÇÃO DOS SISTEMAS

C Sistema destinado à preparação para Concursos Públicos e Aprimoramento Profissional via INTERNET RACIOCÍNIO LÓGICO

Neste capítulo usaremos polinômios interpoladores de primeiro e segundo grau, que substituirão uma função de difícil solução por um polinômio.

Laboratório de Circuitos Polifásicos e Magnéticos

Máximos, Mínimos e Pontos de Sela de funções f ( x,

Cinemática de Corpos Rígidos Cinética de Corpos Rígidos Métodos Newton-Euler Exemplos. EESC-USP M. Becker /67

COMPENSAÇÃO ANGULAR E REMOÇÃO DA COMPONENTE DE SEQÜÊNCIA ZERO NA PROTEÇÃO DIFERENCIAL DE TRANSFORMADORES

Materiais. Corrosão e Protecção de Materiais

Sequências Teoria e exercícios

CÁLCULO I 1 o Semestre de 2012 O CÁLCULO DE ÁREAS

COMPENSAÇÃO ANGULAR E REMOÇÃO DA COMPONENTE DE SEQÜÊNCIA ZERO NA PROTEÇÃO DIFERENCIAL

MATEMÁTICA. Equações do Segundo Grau. Professor : Dêner Rocha. Monster Concursos 1

AULA 1. 1 NÚMEROS E OPERAÇÕES 1.1 Linguagem Matemática

22/8/2010 COMPLEXIDADE DE ALGORITMOS CES para os numeradores e 1 para o denominador. Noções de complexidade de algoritmos

Conjuntos Numéricos. Conjuntos Numéricos

Grandezas escalares e grandezas vetoriais. São grandezas que ficam completamente definidas por um valor numérico, com ou sem unidades.

Análise de Algoritmos Gabarito da Primeira Prova

Geometria Analítica e Álgebra Linear

Universidade Federal do Rio Grande FURG. Instituto de Matemática, Estatística e Física IMEF Edital 15 CAPES. FUNÇÕES Parte B

Ordenação. Notação. Notação. Alguns Métodos de Ordenação. Estabilidade x Instabilidade. Ordenação em Vetores

Assim, temos: Logo: igual a. de Z. Solução: Seja z a bi, com a, b. De log3 2z 2z 1 2, temos: 2z 2z 1 9. Calculando. b 4 b 4 (não convém) com

CIRCUITOS LINEARES DE CORRENTE CONTÍNUA

Prof. Ms. Aldo Vieira Aluno:

SOCIEDADE PORTUGUESA DE MATEMÁTICA

Unidimensional pois possui apenas uma única dimensão

Cálculo do Conceito ENADE

ESCOLA SECUNDÁRIA COM 3º CICLO D. DINIS 12º ANO DE ESCOLARIDADE DE MATEMÁTICA A Tema II Introdução ao Cálculo Diferencial II

PROVA G3 FIS /06/2009 FLUIDOS E TERMODINÂMICA

TEORIA MICROECONÔMICA I N

3 Teoria dos Conjuntos Fuzzy

Notas de Aula: Mecânica dos Sólidos I Prof. Willyan Machado Giufrida. Características geométrica das superfícies planas

Capítulo 5 AJUSTAMENTO DOS VETORES OBSERVADOS. os possíveis vetores de serem formados entre as estações, ou seja,

BINÔMIO DE NEWTON E TRIÂNGULO DE PASCAL

6/22/2015. Física Geral III

UNIVERSIDADE DE SÃO PAULO ESCOLA POLITÉCNICA

8/5/2015. Física Geral III

Transcrição:

Ordenção por Fusão Fusão (Interlção) Prof. Dr. José Augusto Brnuss DFM-FFCRP-USP Est ul ntroduz métodos de ordenção por A é utlzd qundo dus ou ms seqüêns enontrm-se ordends O oetvo é nterlr s seqüêns ordends em um seqüên ordend ún 1 A plção de lgortmos de ordenção é mprtável, se os ddos não estverem em memór prnpl, ms sm em dsos ou fts Nesse so, os ddos são desrtos n form de rquvos seqüens u rteríst é que, d nstnte, é possível o esso (dreto) um e somente um dos seus omponentes Isso é um restrção sever, se omprd om s posslddes ofereds pel estrutur de vetor A operção de omn dus ou ms seqüêns ordends pr formr um ún seqüên ordend trvés d plção de repetds seleções entre os elementos essíves d momento Assm sendo, operção de é muto ms smples que de ordenção, sendo empregd omo operção uxlr no proesso ms omplexo de ordenção seqüenl. 2 Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] 2 3 4 Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] 2 3 2 3 4 5 6 1

Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] 2 3 4 5 2 3 4 5 6 7 8 Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] 2 3 4 5 6 7 2 3 4 5 6 7 8 9 10 Se [] < [] então [] deve ser nserdo em [] senão [] deve ser nserdo em [] =6 Um dos vetores ( ou ) pode ter um número menor de elementos do que o outro vetor, ou se, N M. Nesse so, o termnr um dos vetores, os dems elementos do outro vetor deverão ser opdos pr o vetor destno 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 10 11 12 2

=6 Um dos vetores ( ou ) pode ter um número menor de elementos do que o outro vetor, ou se, N M. Nesse so, o termnr um dos vetores, os dems elementos do outro vetor deverão ser opdos pr o vetor destno =6 Um dos vetores ( ou ) pode ter um número menor de elementos do que o outro vetor, ou se, N M. Nesse so, o termnr um dos vetores, os dems elementos do outro vetor deverão ser opdos pr o vetor destno 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 13 13 14 =6 Um dos vetores ( ou ) pode ter um número menor de elementos do que o outro vetor, ou se, N M. Nesse so, o termnr um dos vetores, os dems elementos do outro vetor deverão ser opdos pr o vetor destno =6 Um dos vetores ( ou ) pode ter um número menor de elementos do que o outro vetor, ou se, N M. Nesse so, o termnr um dos vetores, os dems elementos do outro vetor deverão ser opdos pr o vetor destno =9 2 3 4 5 6 7 8 9 10 11 13 15 2 3 4 5 6 7 8 9 10 11 13 15 17 15 16 Algortmo de Fusão (3 vetores) Algortmo de Fusão (2 vetores) nt,,; = 1; = 1; = 0; whle ( <= N && <= M) { ++; f([] < []) { [] = []; ++; { [] = []; ++; // # > # // opr resto de p/ whle ( <= N) { ++; [] = []; ++; // # > # // opr resto de p/ whle ( <= M) { ++; [] = []; ++; Ao térmno, =N+M que é o número de elementos do vetor 17 Este mesmo lgortmo pode ser flmente lterdo pr stução n qul os elementos serem nterldos enontrmse em um mesmo vetor Nesse so, desemos nterlr s seqüêns ordends [],..., [h] e [h+1],..., [R] pr oter o vetor [],..., [R] tmém ordendo 18 3

Algortmo de Fusão (2 vetores) Algortmo de Fusão (2 vetores) vod merge(tem [], nt, nt h, nt R, tem []) /* pré:([],...,[h]) e ([h+1],...,[r]) são dus seqüêns ordends om hves []... [h] e [h+1]... [R] Por exemplo: h h+1 R 12 1 3 5 7 13 15 17 pós:([],...,[h]) e ([h+1],...,[r]) são nterlds pr oter seqüên ([],...,[R]) tl que []... [R] Por exemplo: */ R 10 12 13 15 17 19 vod merge(tem [], nt, nt h, nt R, tem []) /* pré:([],...,[h]) e ([h+1],...,[r]) são dus seqüêns ordends om hves []... [h] e [h+1]... [R] pós:([],...,[h]) e ([h+1],...,[r]) são nterlds pr oter seqüên ([],...,[R]) tl que []... [R] */ { nt,,; = ; = h+1; = -1; whle ( <= h && <= R) { ++; f([] < []) { [] = []; ++; { [] = []; ++; whle ( <= h) { ++; [] = []; ++; whle ( <= R) { ++; [] = []; ++; 20 Fusão: Análse Em d terção do lço whle nrement de 1 O nremento totl é R-+1 Portnto, o lço será nrementdo no máxmo R- +1 vezes O omndo f move, no máxmo, um elemento por terção Por sso, o tempo totl é O(R-+1) Repre que R-+1 é quntdde de elementos serem nterldos. No so de todo o vetor (=1 e R=N), temos O(N) Ordenção por Fusão Dret 1. Dvdr seqüên nl em dus metdes, hmds e ; 2. Fundr e por meo d omnção de elementos soldos pr formrem pres ordendos; 3. Denomnr seqüên ssm otd e repetr os pssos 1 e 2, dest vez efetundo de pres ordendos em quádrupls ordends; 4. Repetr os pssos nterores, exeutndo de quádrupls em ótupls, e ssm prossegundo duplndo d vez o omprmento ds suseqüêns envolvds no proesso de, té que tod seqüên este ordend. 21 22 (1º psso) Consdere o vetor (2º psso) Dvdndo-se o meo 45 56 12 43 95 19 8 67 45 95 19 56 8 12 43 67 que é prtondo em otém-se 45 56 12 43 45 95 19 56 95 19 8 67 A de elementos soldos em pres ordendos result em 45 95 19 56 8 12 43 67 8 12 43 67 A de pres ordendos em quádrupls result em 8 12 45 95 19 43 56 67 23 24 4

(3º psso) Um terer dvsão o meo de result em 8 12 45 95 19 43 56 67 A de quádupls ordends em ótupls result em 8 12 45 95 19 43 56 67 8 12 19 43 45 56 67 95 Ordenção por Fusão Dret No ontexto do lgortmo de, d operção que trt de um só vez todo o onunto de ddos é denomnd fse, e o menor suproesso que, por su repetção suessv, mplement o proesso de ordenção proprmente dto é hmdo psso ou estágo No exemplo nteror, ordenção fo relzd em três pssos, d qul onsstndo de um fse de prtção e um fse de Como pode ser oservdo, pr que se possível relzção d ordenção são neessárs três seqüêns 25 26 Ordenção por Fusão Dret N reldde, s fses de prtonmento não ofereem nenhum ontrução o proesso de ordenção Esss fses onsttuem metde de tods s operções de movmentções e podem ser elmnds trvés d omnção d fse de prtonmento om de Ao nvés de efetur um pr produzr um seqüên ún, o resultdo do proesso de é medtmente redstruído em dus seqüêns, s qus onstturão s s de ddos que lmentrão os psso segunte Em ontrste om ordenção desrt m por de dus fses, este novo método é denomndo de fse ún ou lned Tl método é superor o nteror, um vez que são neessárs somente metde ds operções de movmentções exgds no outro so O preço dest vntgem é um qurt seqüên 27 Ordenção por Fusão (2 vetores) A lssfção por nterlção onsste em várs pssgens sore os elementos serem lssfdos N prmer pssgem, são nterlds seqüêns de tmnho 1, n segund o tmnho ds seqüêns é 2 e n -ésm pssgem s seqüêns nterlds são de tmnho 2-1 O lgortmo mpss relz um pssgem de ordenção por 28 Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) /* pré: N>0 é o número de elementos do vetor e p é o tmnho ds suseqüêns de que serão nterlds pós: Interl pres dentes de omprmento p d seqüên pr */ { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; // nterrlr restnte de omprmento < 2*p f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; 29 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; N-2p+1 +p-1 +2p-1 30 5

Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; vod merge(tem [], nt, nt h, nt R, tem []) f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; N-2p+1 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R N-2p+1 +p-1 +2p-1 +p-1 +2p-1 31 32 Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R N-2p+1 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R N-2p+1 +p-1 +2p-1 1 2 4 5 +p-1 +2p-1 1 2 4 5 33 34 Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R N-2p+1 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 N-2p+1 R +p-1 +2p-1 1 2 4 5 3 7 15 17 +p-1 +2p-1 1 2 4 5 3 7 15 17 35 36 6

Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R N-2p+1 +p-1 +2p-1 1 2 4 5 3 7 15 17 6 8 12 13 37 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; N-2p+1 +p-1 1 2 4 5 3 7 15 17 6 8 12 13 38 Pssgem de Ordenção Pssgem de Ordenção vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; N-2p+1 +p-1 1 2 4 5 3 7 15 17 6 8 12 13 10 39 vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; h h+1 R +p-1 1 2 4 5 3 7 15 17 6 8 12 13 10 40 Pssgem de Ordenção Ordenção por Fusão vod mpss(tem [], nt N, nt p, tem []) { nt,; = 1; whle ( <= N-2*p+1) { merge(,,+p-1,+2*p-1,); = + 2*p; f(+p-1 < N) merge(,,+p-1,n,); for(=; <= N; ++) [] = []; Térmno d pssgem pr vod Mergesort(tem [], nt N) { nt,p; tem [Mx]; // é um vetor uxlr e Mx é o tmnho máxmo de p = 1; whle (p < N) { mpss(,n,p,); p = 2*p; mpss(,n,p,); p = 2*p; 1 2 4 5 3 7 15 17 6 8 12 13 10 41 4 2 5 1 17 3 7 15 12 6 13 8 10 42 7

Ordenção por Fusão Ordenção por Fusão vod Mergesort(tem [], nt N) { nt,p; tem [Mx]; // é um vetor uxlr e Mx é o tmnho máxmo de vod Mergesort(tem [], nt N) { nt,p; tem [Mx]; // é um vetor uxlr e Mx é o tmnho máxmo de p = 1; whle (p < N) { mpss(,n,p,); p = 2*p; mpss(,n,p,); p = 2*p; p = 1; whle (p < N) { mpss(,n,p,); p = 2*p; mpss(,n,p,); p = 2*p; 1 2 4 5 3 7 15 17 6 8 12 13 10 1 2 4 5 3 7 15 17 6 8 12 13 10 7 15 17 6 8 10 12 13 43 44 Ordenção por Fusão Exerío vod Mergesort(tem [], nt N) { nt,p; tem [Mx]; // é um vetor uxlr e Mx é o tmnho máxmo de p = 1; whle (p < N) { mpss(,n,p,); p = 2*p; mpss(,n,p,); p = 2*p; 7 15 17 6 8 10 12 13 10 12 13 15 17 vod Mergesort(tem [], nt N) { nt,p; tem [Mx]; p = 1; whle (p < N) { mpss(,n,p,); p = 2*p; mpss(,n,p,); p = 2*p; Utlzndo o lgortmo Mergesort, otenh o número de omprções e movmentções em d psso (p) pr os seguntes vetores 45,56,12,43,95,19,8,67 8,12,19,43,45,56,67,95 95,67,56,45,43,19,12,8 19,12,8,45,43,56,67,95 45 46 Solução Ordenção por Fusão: Análse p C M 45 56 12 43 95 19 8 67 1 4 8 45 56 12 43 19 95 8 67 2 5 8 12 43 45 56 8 19 67 95 4 6 8 8 12 19 43 45 56 67 95 8 0 8 8 12 19 43 45 56 67 95 15 32 p C M 19 12 8 45 43 56 67 95 1 4 8 12 19 8 45 43 56 67 95 2 5 8 8 12 19 45 43 56 67 95 4 5 8 8 12 19 43 45 56 67 95 8 0 8 8 12 19 43 45 56 67 95 14 32 p C M 8 12 19 43 45 56 67 95 1 4 8 8 12 19 43 45 56 67 95 2 4 8 8 12 19 43 45 56 67 95 4 4 8 8 12 19 43 45 56 67 95 8 0 8 8 12 19 43 45 56 67 95 12 32 p C M 95 67 56 45 43 19 12 8 1 4 8 67 95 45 56 19 43 8 12 2 4 8 45 56 67 95 8 12 19 43 4 4 8 8 12 19 43 45 56 67 95 8 0 8 8 12 19 43 45 56 67 95 12 32 São efetuds, no totl, log 2 N pssgens sore os ddos. Com dos rquvos podem ser nterldos em tempo lner (lgortmo merge), d pssgem de ordenção por nterlção tom o tempo O(N) Como exstem log 2 N pssgens, o tempo totl é O(N log 2 N) Entretnto, exstem hmds de proedmento envolvds no proesso, o que, normlmente, rret um esforço omputonl mor O lgortmo segunte, lém de mplementr ordenção por nterlção utlzndo um úno vetor, o fz em um úno lgortmo (sem hmds de proedmento) 47 48 8

Um úno vetor pode ser flmente utlzdo pr representr dus seqüêns, se for nterpretdo omo um estrutur de ddos om dus extremddes Ao nvés de se efetur prtr dos ddos provenentes de dos onuntos-s, os elementos são extrídos ds dus extremddes do vetor Assm, form gerl d fse omnd de prtção- pode ser lustrd pel fgur segunte destno prtção 49 50 prtção prtção destno 2 destno 51 52 prtção prtção 2 10 destno 2 10 destno 53 54 9

prtção prtção destno 2 10 4 destno 2 10 13 4 55 56 prtção prtção destno 2 10 13 4 destno 2 10 1 13 4 57 58 prtção prtção destno 2 10 1 8 13 4 destno 2 10 1 8 13 4 59 60 10

prtção prtção destno 2 10 1 8 5 13 4 destno 2 10 1 8 12 5 13 4 61 62 prtção prtção destno 2 10 1 8 12 5 13 4 destno 2 10 1 8 3 12 5 13 4 63 64 prtção prtção destno 2 10 1 8 3 6 12 5 13 4 destno 2 10 1 8 3 6 12 5 13 4 65 66 11

prtção prtção destno 2 10 1 8 3 6 15 12 5 13 4 destno 2 10 1 8 3 6 17 15 12 5 13 4 67 68 prtção prtção destno 2 10 1 8 3 6 17 15 12 5 13 4 destno 69 70 Térmno d pssgem Destno torn-se pr nov pssgem prtção prtção destno destno 71 72 12

prtção prtção 2 destno 2 4 destno 73 74 prtção prtção 2 4 10 destno 2 4 10 13 destno 75 76 prtção prtção 2 4 10 13 destno destno 2 4 10 13 1 77 78 13

prtção prtção destno 2 4 10 13 5 1 destno 2 4 10 13 8 5 1 79 80 prtção prtção destno 2 4 10 13 12 8 5 1 destno 2 4 10 13 12 8 5 1 81 82 prtção prtção destno 2 4 10 13 3 12 8 5 1 destno 2 4 10 13 3 6 12 8 5 1 83 84 14

prtção prtção destno 2 4 10 13 3 6 15 12 8 5 1 destno 2 4 10 13 3 6 15 17 12 8 5 1 85 86 prtção prtção destno 2 4 10 13 3 6 15 17 12 8 5 1 destno 87 88 Térmno d pssgem Destno torn-se pr nov pssgem prtção prtção destno destno 89 90 15

prtção prtção 1 destno 1 2 destno 91 92 prtção prtção 1 2 4 destno 1 2 4 5 destno 93 94 prtção prtção 1 2 4 5 8 destno 1 2 4 5 8 10 destno 95 96 16

prtção prtção destno 1 2 4 5 8 10 12 destno 1 2 4 5 8 10 12 13 97 98 prtção prtção destno 1 2 4 5 8 10 12 13 destno 1 2 4 5 8 10 12 13 3 99 100 prtção prtção destno 1 2 4 5 8 10 12 13 6 3 destno 1 2 4 5 8 10 12 13 7 6 3 101 102 17

prtção prtção destno 1 2 4 5 8 10 12 13 15 7 6 3 destno 103 104 Térmno d pssgem Destno torn-se pr nov pssgem prtção prtção destno destno 105 106 prtção prtção 1 destno 1 2 destno 107 108 18

prtção prtção 1 2 3 destno 1 2 3 4 destno 109 110 prtção prtção destno 6 destno 111 112 prtção prtção destno 6 7 destno 113 114 19

prtção prtção destno 10 destno 10 12 115 116 prtção prtção destno 10 12 13 destno 10 12 13 15 117 118 Térmno d pssgem Vetor Ordendo prtção prtção destno 10 12 13 15 17 destno 10 12 13 15 17 119 120 20

Resumo Aprentemente, o lgortmo de ordenção por é stnte ompettvo, mesmo qundo omprdo os métodos ms sofstdos de ordenção vstos ns uls nterores Entretnto, sorerg gerl neessár à mnpulção de índes é reltvmente lt e um desvntgem desv é neessdde de um áre de rmzenmento de 2N elementos Est é rzão pel qul ordenção por rrmente é utlzd pr vetores, sto é, pr ddos rmzendos em memór prnpl 121 21