Skip to content

Instantly share code, notes, and snippets.

@manuwell
Created September 12, 2018 01:31
Show Gist options
  • Save manuwell/fec87585af8fc6d5e139b121be8f2152 to your computer and use it in GitHub Desktop.
Save manuwell/fec87585af8fc6d5e139b121be8f2152 to your computer and use it in GitHub Desktop.

Exercício

Ordernar os números do RA 20993835 usando o algoritmo QuickSort

Resposta

Vetor: 20993835

vetor pivot esq dir operação
209[9] 3835 9 9 5 troca posicao esq com dir # pivot escolhido posicao = N / 2
205[9] 3839 9 9 3 troca posicao esq com dir # pivot escolhido posicao = (N / 2)
205[3] 3899 3 5 3 troca posicao esq com dir # pivot escolhido posicao = (N / 2)
2[0]33 5899 0 2 0 troca posicao esq com dir # pivot escolhido posicao = (0 até (N / 2)) / 2
0233 5[8]99 8 - - nada a fazer. ordenado # pivot escolhido posicao = ((N / 2) até N) / 2

Notações:

  • 'N' representa o número do último índice do vetor
  • Na coluna vetor, a notação '[x]' representa o pivot selecionado
  • Coluna 'esq', representa o primeiro valor a maior encontrado à esquerda do pivot
  • Coluna 'dir', representa o primeiro valor a menor encontrado à direita do pivot
  • Coluna 'operação', representa a operação efetuada naquela iteração

Observações:

As divisões efetuadas truncam as casas decimais, trabalhando apenas com a parte inteira. Ex:

Para (10 / 2) = 2.5 ; o resultado será 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment