An´lisis de Algoritmos                        a                    M.C.C. Ericka Rechy Ram´ ırez                       Uni...
fin-si   fin-desde   intercambiar(A[i],A[p])   devuelve pReferencias[ST98]       Standish Thomas A.: Data Structures in Java...
Upcoming SlideShare
Loading in …5
×

Ordenamiento quicksort

2,034 views
1,927 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,034
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
29
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ordenamiento quicksort

  1. 1. An´lisis de Algoritmos a M.C.C. Ericka Rechy Ram´ ırez Universidad Veracruzana Licenciatura en Sistemas Computacionales Administrativos Marzo 22, 20061. Ordenamiento1.1. Ordenamiento Quicksort Desarrollado por C.A.R. Hoare. Es un m´todo de ordenamiento de divide y evencer´s que consiste en tomar un elemento del arreglo como pivote. Este pivote aes usado para separar los elementos del arreglo en 2 particiones: 1) Partici´n oizquierda contiene elementos menores al pivote y 2) Partici´n derecha contiene oelementos mayores o iguales al pivote. Quicksort es entonces aplicado de forma recursiva para ordenar las particio-nes izquierdas y derechas.funcion Quicksort(A[], m, n) si(m < n) entonces p ← particion (A, m, n) Quicksort(A, m, p-1) Quicksort(A, p+1, n) fin-siEntero funcion particion(A[], i, j) mitad ← (i + j)/2 pivote ← A[mitad] A[mitad] ← A[i] A[i] ← pivote p←i desde k ← i + 1 hasta k ← j hacer Si A[k] < pivote entonces temp ← A[++p]; A[p] ← A[k] A[k] ← temp 1
  2. 2. fin-si fin-desde intercambiar(A[i],A[p]) devuelve pReferencias[ST98] Standish Thomas A.: Data Structures in Java, Addison Wesley, 1998 2

×