117
Ordenação Externa Letícia Rodrigues Bueno UFABC

Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Embed Size (px)

Citation preview

Page 1: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

Letícia Rodrigues Bueno

UFABC

Page 2: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

Page 3: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

Page 4: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

• custo para acessar registro é maior: devemos minimizaracessos, ou seja, transferência da memória secundáriapara memória primária;

Page 5: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

• custo para acessar registro é maior: devemos minimizaracessos, ou seja, transferência da memória secundáriapara memória primária;

• fitas magnéticas: acesso de forma sequencial;

Page 6: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

• custo para acessar registro é maior: devemos minimizaracessos, ou seja, transferência da memória secundáriapara memória primária;

• fitas magnéticas: acesso de forma sequencial;

• discos: acesso direto, mas todo bloco deve ser trazido àmemória;

Page 7: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

• custo para acessar registro é maior: devemos minimizaracessos, ou seja, transferência da memória secundáriapara memória primária;

• fitas magnéticas: acesso de forma sequencial;

• discos: acesso direto, mas todo bloco deve ser trazido àmemória;

• métodos de ordenação externa são muito diferentes dosmétodos de ordenação interna;

Page 8: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• envolve mais registros do que a memória interna podesuportar;

• custo para acessar registro é maior: devemos minimizaracessos, ou seja, transferência da memória secundáriapara memória primária;

• fitas magnéticas: acesso de forma sequencial;

• discos: acesso direto, mas todo bloco deve ser trazido àmemória;

• métodos de ordenação externa são muito diferentes dosmétodos de ordenação interna;

• motivo: dados estão em memória externa, relativamentemuito mais lenta que memória principal;

Page 9: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

Page 10: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

Page 11: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

Page 12: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:

Page 13: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;

Page 14: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;2. cada bloco é ordenado na memória interna;

Page 15: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;2. cada bloco é ordenado na memória interna;3. blocos ordenados são intercalados através de várias

passadas sobre arquivo;

Page 16: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;2. cada bloco é ordenado na memória interna;3. blocos ordenados são intercalados através de várias

passadas sobre arquivo;4. a cada passada, blocos ordenados cada vez maiores são

criados;

Page 17: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;2. cada bloco é ordenado na memória interna;3. blocos ordenados são intercalados através de várias

passadas sobre arquivo;4. a cada passada, blocos ordenados cada vez maiores são

criados;

• fundamental: reduzir número de passadas sobre arquivo;

Page 18: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Ordenação Externa

• ordenação por intercalação: método de ordenaçãoexterna mais importante;

• intercalar: combinar dois ou mais blocos ordenados emúnico bloco ordenado selecionando apropriadamente ositens dos blocos;

• estratégia geral para ordenação externa:1. primeira passada sobre arquivo: quebra em blocos do

tamanho da memória interna disponível;2. cada bloco é ordenado na memória interna;3. blocos ordenados são intercalados através de várias

passadas sobre arquivo;4. a cada passada, blocos ordenados cada vez maiores são

criados;

• fundamental: reduzir número de passadas sobre arquivo;

• bons métodos de ordenação externa requerem menosque 10 passadas sobre arquivo;

Page 19: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

Page 20: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

Page 21: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

Page 22: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

Page 23: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T

Page 24: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T

fita 2: C E R

Page 25: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T

fita 2: C E R

fita 3: A A L

Page 26: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O

fita 2: C E R

fita 3: A A L

Page 27: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O

fita 2: C E R A B L

fita 3: A A L

Page 28: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O

fita 2: C E R A B L

fita 3: A A L A C N

Page 29: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L

fita 3: A A L A C N

Page 30: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

Page 31: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4:

Memoria principalA C I

Page 32: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A

Memoria principalA C I

Page 33: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A

Memoria principalC I L

Page 34: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C

Memoria principalE I L

Page 35: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E

Memoria principalI L R

Page 36: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I

Memoria principalL N R

Page 37: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L

Memoria principal N R

Page 38: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L N

Memoria principal R T

Page 39: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L N R

Memoria principal T

Page 40: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L N R T

Memoria principal

Page 41: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L N R T

fita 5: A A A B C C L N O

Page 42: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: I N T A C O A D E

fita 2: C E R A B L A

fita 3: A A L A C N

fita 4: A A C E I L N R T

fita 5: A A A B C C L N O

fita 6: A A D E

Page 43: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1:

fita 2:

fita 3:

fita 4: A A C E I L N R T

fita 5: A A A B C C L N O

fita 6: A A D E

Page 44: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1:

fita 2:

fita 3:

fita 4: A A C E I L N R T

fita 5: A A A B C C L N O

fita 6: A A D E

Memoria principalA A A

Page 45: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• uso: fitas magnéticas. Exemplo:• 22 registros lidos sequencialmente;• memória interna com espaço apenas para 3 registros;• número de fitas auxiliares: 6;• intercalação balanceada de 3 caminhos:

I N T E R C A L A C A O B A L A N C E A D A

fita 1: A A A A A A A B C C C D E E I L L N N O R T

fita 2:

fita 3:

fita 4: A A C E I L N R T

fita 5: A A A B C C L N O

fita 6: A A D E

Page 46: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

Page 47: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

Page 48: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

Page 49: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

• Para n = 22, m = 3 e f = 3: P(n) = log3223 = 2;

Page 50: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

• Para n = 22, m = 3 e f = 3: P(n) = log3223 = 2;

• Para n = 1.000.000.000, m = 2.000.000 e f = 4: P(n) = 5;

Page 51: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

• Para n = 22, m = 3 e f = 3: P(n) = log3223 = 2;

• Para n = 1.000.000.000, m = 2.000.000 e f = 4: P(n) = 5;

• Tempo total: multiplicar P(n) + 1 pelo tempo gasto paratransferir arquivo de uma fita para outra;

Page 52: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

• Para n = 22, m = 3 e f = 3: P(n) = log3223 = 2;

• Para n = 1.000.000.000, m = 2.000.000 e f = 4: P(n) = 5;

• Tempo total: multiplicar P(n) + 1 pelo tempo gasto paratransferir arquivo de uma fita para outra;

• Para intercalação de f caminhos, usamos 2f fitas, mas épossível usar apenas f + 1;

Page 53: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• Quantas passadas são necessárias para ordenar umarquivo de tamanho arbitrário?

• n registros, memória para m registros e f fitas utilizadaspor vez, intercalação precisa de P(n) = logf

nm passadas;

• Para n = 22, m = 3 e f = 3: P(n) = log3223 = 2;

• Para n = 1.000.000.000, m = 2.000.000 e f = 4: P(n) = 5;

• Tempo total: multiplicar P(n) + 1 pelo tempo gasto paratransferir arquivo de uma fita para outra;

• Para intercalação de f caminhos, usamos 2f fitas, mas épossível usar apenas f + 1;

• Custo: uma passada a mais sobre o arquivo em cadaintercalação.

Page 54: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

Page 55: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:

Page 56: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;

Page 57: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;2. f fitas para fase de intercalação e uma fita de saída;

Page 58: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;2. f fitas para fase de intercalação e uma fita de saída;

• escolha de f para disco magnético:

Page 59: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;2. f fitas para fase de intercalação e uma fita de saída;

• escolha de f para disco magnético:1. disco permite acesso direto a posições arbitrárias do

arquivo;

Page 60: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;2. f fitas para fase de intercalação e uma fita de saída;

• escolha de f para disco magnético:1. disco permite acesso direto a posições arbitrárias do

arquivo;2. porém, acesso sequencial é mais eficiente;

Page 61: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Balanceada de f -Caminhos

• escolha de f para fitas magnéticas:1. número de fitas disponíveis menos um;2. f fitas para fase de intercalação e uma fita de saída;

• escolha de f para disco magnético:1. disco permite acesso direto a posições arbitrárias do

arquivo;2. porém, acesso sequencial é mais eficiente;3. número de discos disponíveis menos um, para evitar maior

custo envolvido se dois arquivos diferentes estiverem nomesmo disco;

Page 62: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

Page 63: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

Page 64: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

Page 65: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

Page 66: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:

Page 67: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:1. pega menor chave na memória (usando heap);

Page 68: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:1. pega menor chave na memória (usando heap);2. lê próximo item do arquivo;

Page 69: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:1. pega menor chave na memória (usando heap);2. lê próximo item do arquivo;3. se próximo item é menor que o item que está saindo,

marca item para próximo bloco;

Page 70: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:1. pega menor chave na memória (usando heap);2. lê próximo item do arquivo;3. se próximo item é menor que o item que está saindo,

marca item para próximo bloco;4. quando item marcado vai para topo da fila de prioridades,

bloco corrente é encerrado e novo bloco ordenado éiniciado;

Page 71: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• Intercalação balanceada de caminhos: implementaçãopor filas de prioridades;

• Implementação é eficiente e elegante;

• Pode ser utilizada na primeira passada sobre arquivo paraquebrar em blocos e também na intercalação;

• Na primeira passada:1. pega menor chave na memória (usando heap);2. lê próximo item do arquivo;3. se próximo item é menor que o item que está saindo,

marca item para próximo bloco;4. quando item marcado vai para topo da fila de prioridades,

bloco corrente é encerrado e novo bloco ordenado éiniciado;

5. ao final, vários blocos ordenados são obtidos.

Page 72: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

Page 73: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

Page 74: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

Page 75: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

• isso pode economizar uma passada sobre arquivo;

Page 76: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

• isso pode economizar uma passada sobre arquivo;

• se houver alguma ordem nas chaves: blocos ordenadospodem ser ainda maiores;

Page 77: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

• isso pode economizar uma passada sobre arquivo;

• se houver alguma ordem nas chaves: blocos ordenadospodem ser ainda maiores;

• se nenhuma chave tem mais de m chaves maiores queela, antes dela: arquivo é ordenado na primeira passada.Exemplo: chaves R A P A Z ;

Page 78: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

• isso pode economizar uma passada sobre arquivo;

• se houver alguma ordem nas chaves: blocos ordenadospodem ser ainda maiores;

• se nenhuma chave tem mais de m chaves maiores queela, antes dela: arquivo é ordenado na primeira passada.Exemplo: chaves R A P A Z ;

• se f é pequeno, não tem vantagem porque menor itempode ser encontrado em f − 1 comparações;

Page 79: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Implementação por Seleção por Substituição

• se chaves são randômicas: blocos ordenados são cercade duas vezes o tamanho dos blocos criados porordenação interna;

• fase de intercalação inicia com blocos ordenados emmédia 2 vezes maiores que tamanho da memória interna;

• isso pode economizar uma passada sobre arquivo;

• se houver alguma ordem nas chaves: blocos ordenadospodem ser ainda maiores;

• se nenhuma chave tem mais de m chaves maiores queela, antes dela: arquivo é ordenado na primeira passada.Exemplo: chaves R A P A Z ;

• se f é pequeno, não tem vantagem porque menor itempode ser encontrado em f − 1 comparações;

• se f ≥ 8, heap é melhor pois faz apenas log2 fcomparações;

Page 80: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

Page 81: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

fita 1

fita 2

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 82: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T->I<-E

fita 1 I

fita 2

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 83: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

->I<-E

->N<-R

fita 1 IN

fita 2

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 84: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

fita 1 INR

fita 2

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 85: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C->T<-A

fita 1 INRT

fita 2

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 86: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

->T<-A->A<-L

fita 1 INRT

fita 2 A

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 87: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

->T<-A->A<-L->C<-A

fita 1 INRT

fita 2 AC

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 88: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C fita 1 INRT

fita 2 ACE

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 89: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

A A C->L<-A

fita 1 INRT

fita 2 ACEL

fita 3

I N T E R C A L A C A O B A L A N C E A D A

Page 90: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->A<-O

A A C

A O C

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 A

I N T E R C A L A C A O B A L A N C E A D A

Page 91: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->A<-B

->A<-O

A A C

A O C

B O C

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 AA

I N T E R C A L A C A O B A L A N C E A D A

Page 92: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 AAB

I N T E R C A L A C A O B A L A N C E A D A

Page 93: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

L O A

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 AABC

I N T E R C A L A C A O B A L A N C E A D A

Page 94: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->L<-A

L O A

O A A

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 AABCL

I N T E R C A L A C A O B A L A N C E A D A

Page 95: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->L<-A

fita 1 INRT

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 96: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->L<-A

->A<-CA N C fita 1 INRT A

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 97: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->A<-EC N E

->L<-A

->A<-CA N C fita 1 INRT AA

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 98: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->C<-A

->A<-EC N E

E N A

->L<-A

->A<-CA N C fita 1 INRT AAC

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 99: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->E<-D

->C<-A

->A<-EC N E

E N A

N D A

->L<-A

->A<-CA N C fita 1 INRT AACE

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 100: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->N<-A

->E<-D

->C<-A

->A<-EC N E

E N A

N D A

A D A

->L<-A

->A<-CA N C fita 1 INRT AACEN

fita 2 ACEL

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 101: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->A

->N<-A

->E<-D

->C<-A

->A<-EC N E

E N A

N D A

A D A

A D

->L<-A

->A<-CA N C fita 1 INRT AACEN

fita 2 ACEL A

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 102: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A

->A

->A

->N<-A

->E<-D

->C<-A

->A<-EC N E

E N A

N D A

A D A

A D

D

->L<-A

->A<-CA N C fita 1 INRT AACEN

fita 2 ACEL AA

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 103: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Seleção por Substituição: Primeira Passada

->A<-E

->L<-A

I N T

N E T

R E T

T E C

->I<-E

->N<-R->R<-C

A E C

C E L

E A L

L A C

->T<-A->A<-L->C<-A->E<-C

->C<-L

->B<-A

->A<-B

->A<-O

A A C

A O C

B O C

C O A

->O<-N

->L<-A

L O A

O A A

A N A->D

->A

->A

->N<-A

->E<-D

->C<-A

->A<-EC N E

E N A

N D A

A D A

A D

D

->L<-A

->A<-CA N C fita 1 INRT AACEN

fita 2 ACEL AAD

fita 3 AABCLO

I N T E R C A L A C A O B A L A N C E A D A

Page 104: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

Page 105: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

Page 106: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

• necessário copiar o arquivo quase todo da fita de saídapara f fitas de entrada;

Page 107: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

• necessário copiar o arquivo quase todo da fita de saídapara f fitas de entrada;

• intercalação polifásica: estratégia para eliminar anecessidade da cópia adicional;

Page 108: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

• necessário copiar o arquivo quase todo da fita de saídapara f fitas de entrada;

• intercalação polifásica: estratégia para eliminar anecessidade da cópia adicional;

• distribui blocos ordenados produzidos pela seleção porsubstituição entre as fitas, deixando uma livre;

Page 109: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

• necessário copiar o arquivo quase todo da fita de saídapara f fitas de entrada;

• intercalação polifásica: estratégia para eliminar anecessidade da cópia adicional;

• distribui blocos ordenados produzidos pela seleção porsubstituição entre as fitas, deixando uma livre;

• intercalação é executada até que uma das fitas esvazie;

Page 110: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Intercalação Polifásica

• intercalação balanceada de f -caminhos usa f fitas paraintercalar e uma para saída;

• necessário copiar o arquivo quase todo da fita de saídapara f fitas de entrada;

• intercalação polifásica: estratégia para eliminar anecessidade da cópia adicional;

• distribui blocos ordenados produzidos pela seleção porsubstituição entre as fitas, deixando uma livre;

• intercalação é executada até que uma das fitas esvazie;• uma das fitas de saída se torna a fita de entrada e a fita de

entrada se torna uma fita de saída;

Page 111: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

Page 112: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

1. Ordene A usando intercalação balanceada de 4-caminhoscom 2f fitas e m = 3.

Page 113: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

1. Ordene A usando intercalação balanceada de 4-caminhoscom 2f fitas e m = 3.

2. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3.

Page 114: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

1. Ordene A usando intercalação balanceada de 4-caminhoscom 2f fitas e m = 3.

2. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3.

3. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3 implementada por meio deSeleção por Substituição.

Page 115: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

1. Ordene A usando intercalação balanceada de 4-caminhoscom 2f fitas e m = 3.

2. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3.

3. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3 implementada por meio deSeleção por Substituição.

4. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3 com Seleção por Substituição eintercalação polifásica.

Page 116: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Exercícios

Um arquivo A tem registros com chaves: 80, 12, 3, 17, 26, 4,95, 11, 73, 61, 7, 52, 41, 38, 91, 2, 36, 33, 25. Responda:

1. Ordene A usando intercalação balanceada de 4-caminhoscom 2f fitas e m = 3.

2. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3.

3. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3 implementada por meio deSeleção por Substituição.

4. Ordene A usando intercalação balanceada de 4-caminhoscom f + 1 fitas e m = 3 com Seleção por Substituição eintercalação polifásica.

5. Para os exercícios anteriores, avalie a eficiência emrelação ao número de passadas sobre arquivo ecompare-os.

Page 117: Ordenação Externa - professor.ufabc.edu.brprofessor.ufabc.edu.br/~leticia.bueno/classes/aed2/materiais/... · • envolve mais registros do que a memória interna pode ... mas todo

Bibliografia Utilizada

FOLK, M.; ZOELLICK B. File Structures, 2a edição, Addison-Wesley,1992.

ZIVIANI, N. Projeto de Algoritmos: com implementações em Pascal eC, 2a edição, Cengage Learning, 2009.