trabalho

551 palavras 3 páginas
Ordenação: QuickSort
Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 – Aula 16
Algoritmos e Estruturas de Dados I

QuickSort
• Proposto por Hoare em 1960 e publicado em 1962.
• É o algoritmo de ordenação interna mais rápido que se conhece para uma ampla variedade de situações.
• Provavelmente é o mais utilizado.

2

QuickSort
• A idéia básica é dividir o problema de ordenar um conjunto com n itens em dois sub-problemas menores.
• Os problemas menores são ordenados independentemente. • Os resultados são combinados para produzir a solução final. 3

QuickSort
• A parte mais delicada do método é o processo de partição. • O vetor v[esq..dir] é rearranjado por meio da escolha arbitrária de um pivô x.
• O vetor v é particionado em duas partes:
• Parte esquerda: chaves ≤ x.
• Parte direita: chaves ≥ x.

4

QuickSort – Partição
• Algoritmo para o particionamento:
• 1. Escolha arbitrariamente um pivô x.
• 2. Percorra o vetor a partir da esquerda até que v[i] ≥ x.
• 3. Percorra o vetor a partir da direita até que v[j] ≤ x.
• 4. Troque v[i] com v[j].
• 5. Continue este processo até os apontadores i e j se cruzarem. 5

QuickSort – Após a Partição
Ao final, do algoritmo de partição:
• Vetor v[esq..dir] está particionado de tal forma que:
• Os itens em v[esq], v[esq + 1], ..., v[j] são menores ou iguais a x;
• Os itens em v[i], v[i + 1], ..., v[dir] são maiores ou iguais a x.

6

QuickSort – Exemplo
• O pivô x é escolhido como sendo:
• O elemento central: v[(i + j) / 2].

• Exemplo:

3

6

4

5

1

7

2

7

QuickSort – Exemplo

3
Primeira
partição
Segunda
partição

6

4

5

1

7

2

3

2

4

1

5

7

6

1

2

4

3

5

7

6

4

5

7

6

.
.
.

Caso especial: pivô já na posição correta

terceira partição 1

2

3

Continua...
8

QuickSort – Exemplo

1

2

3

4

5

7

6

3

2

Relacionados

  • Trabalhos trabalhos trabalhos
    822 palavras | 4 páginas
  • TRABALHO DE TRABALHO
    316 palavras | 2 páginas
  • Trabalho De Trabalho
    3827 palavras | 16 páginas
  • Trabalho trabalho
    2154 palavras | 9 páginas
  • Trabalho De Trabalho
    1631 palavras | 7 páginas
  • trabalho de trabalho
    3062 palavras | 13 páginas
  • trabalho de trabalho
    7228 palavras | 29 páginas
  • Trabalho é trabalho
    2191 palavras | 9 páginas
  • Trabalho de Trabalho
    1572 palavras | 7 páginas
  • Trabalho de trabalho
    8207 palavras | 33 páginas