QUICKSORT - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

QUICKSORT

Description:

Declaramos el primer elemento del arreglo como primero. Y al ... intercambiar el valor de Down por el pivote. 75. 77. 64. 55. 44. 43. 23. 33. 12. 9. 8. 7. 6. 5 ... – PowerPoint PPT presentation

Number of Views:441
Avg rating:3.0/5.0
Slides: 18
Provided by: salomo5
Category:

less

Transcript and Presenter's Notes

Title: QUICKSORT


1
QUICKSORT
  • Declaremos un arreglo de 9 posiciones con numeros
    aleatorios...

2
QUICKSORT
Declaramos el primer elemento del arreglo como
primero Y al ultimo como ultimo.
Primero
Ultimo
3
QUICKSORT
Ultimo
Primero
Pivote
Declaramos el primero como el pivote del arreglo.
4
QUICKSORT
Pivote 44
Ultimo
Primero
Up
Down
Colocamos a Up como Primero y Down como Ultimo.
5
QUICKSORT
Pivote 44
Ultimo
Primero
Up
Up
Down
Muevo Up al primer valor mayor que el pivote
Despues movemos Down al primer valor de derecha a
izquierda menor que el pivote (en este caso Down
no se mueve).
6
QUICKSORT
Pivote 44
Ultimo
Primero
Up
Down
Ahora intercambiamos los valores de Up y Down
7
QUICKSORT
Pivote 44
Primero
Ultimo
Up
Down
Desde la posicion en que se encuentra movemos Up
a un valor mayor que el pivote.
Primero
Ultimo
Up
Down
8
QUICKSORT
Pivote 44
Primero
Ultimo
Down
Up
Down
Cambiamos Down a la posicion menor que el pivote
recorriendo de Derecha a Izquierda
9
QUICKSORT
Pivote 44
Primero
Ultimo
Down
Up
Down
Intercambiamos los valores de Up y Down
10
QUICKSORT
Pivote 44
Primero
Up
Down
Ultimo
Movemos Up desde la posicion en que se encuetra a
la primera posicion mayor que el pivote y Down a
la primera posicion de derecha a Izquierda menor
que el pivote.
Primero
Up
Down
Ultimo
11
QUICKSORT
Como Up y Down se cruzaron, entonces debemos
intercambiar el valor de Down por el pivote.
Pivote 44
Primero
Down
Ultimo
PivIndex
Ahora notemos que todos los valores debajo de
PivIndex son menores que el y los que estan por
encima son mayores que el.
12
QUICKSORT
Esto nos da ahora dos nuevos subarreglos que hay
que ordenar
Primero 1
Ultimo 1
Primero 2
Ultimo 2
PivIndex
Se debe repetir el proceso hasta que los
subarreglos estén ordenados, lo cual nos dará
como resultado el arreglo ordenado.
13
QUICKSORT
  • El algoritmo del método de ordenamiento estará
    formado por tres procesos
  • QuickSort, proceso que inicia el ordenamiento.
  • Encuentra Pivote, busca el mejor pivote a partir
    del primer elemento del vector
  • Partición, va comparando por ambos extremos e
    intercambia en caso de ser necesario

14
QUICKSORT
  • Inicio quicksort( i , j enteras)
  • indice-pivote?encuentra-pivote( i , j)
  • Si indice-pivote lt gt 0 entonces
  • 3.1 pivote ? Aindice-pivote.data
  • 3.2 k?particion( i , j , pivote)
  • 3.3 quicksort( i , k 1)
  • 3.4 quicksort(k , j )
  • Fin quicksort

15
QUICKSORT
1. Inicio encuentra-pivote( i , j enteras) 2.
primera-clave?Ai.data 3. Para k? i 1 hasta j
hacer 3.1 Si ak.data gt primera-clave
entonces returna k de lo contrario, Si
Ak.data gt primera-clave entonces returna i 4.
returna 0 5. Fin
16
QUICKSORT
1. Inicio partición( i , j enteras,
pivotetipo-clave) entero 2. z? i 3. d?j 4.
Repetir intercambiar(Az,Ad) Mientras
Az.data lt pivote hacer z ? z 1 Mientras
Ad.data gt pivote hacer d? d 1 hasta z
gt d 4. returna z 5. Fin
17
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com