Professional Documents
Culture Documents
Insertion Sort
Selection Sort
Merge Sort
Quick Sort
La estrategia es la siguiente:
Si no hay elementos, hemos terminado.
Sino, Busco el mnimo elemento del array.
Lo intercambio con el primero.
Contino con el mismo procedimiento en el resto
del array.
SELECTION SORT
void selecccion(int[] a) {
for (int i = 0; i < a.length - 1; i++)
{ int min = i;
for (int j = i + 1; j < a.length; j++)
{ if (a[j] < a[min])
min = j;
}
if (i != min)
{ int aux = a[i];
a[i] = a[min];
a[min] = aux;
}
}
}
MERGE SORT
Es un claro ejemplo de Divide y Vencers.
PASO BASE
DIVIDE
Si tiene ms de un elemento, dividir el array en
dos sub-arrays de la mitad del tamao.
VENCERS
MergeSort.
PASO BASE
Si la cantidad de elementos es 0 o 1,
retornar.
DIVIDE
Elegir el pivote
VENCERS
y a la derecha los mayores.
Cuando ms
11 grande
5 4 6sea -3el 7vector a ordenar
mayor ser la diferencia de la eficiencia de los
algoritmos.
ORDENACIN
COMPARACIN: SELECTION SORT
COMPARACIONES
Selecciona el mnimo realizando 11 5 4 6 -3 7
5 comparaciones: 11 con 5, 5 con 4,
4 con 6, 4 con -3, -3 con 7
5
-3 5 4 6 11 7
Selecciona el mnimo realizando
4 comparaciones: 5 con 4, 4 con 6, 4
4 con 11, 4 con 7 -3 4 5 6 11 7
Selecciona el mnimo realizando 3
3
comparaciones: 5 con 6, 5 con 11,
5 con 7 -3 4 5 6 11 7
Selecciona el mnimo realizando 2 2
comparaciones: 6 con 11, 6 con 7
-3 4 5 6 11 7
Selecciona el mnimo realizando
1 comparaciones: 7 con 11 1
-3 4 5 6 7 11
TOTAL 15
COMPARACIONES
ORDENACIN
COMPARACIN: MERGE SORT
11 5 4 6 -3 7
11 5 4 6 -3 7
DIVIDE
11 5 4 6 -3 7
11 5 6 -3
1 comparacin 1 comparacin
MEZCLA
5 11 -3 6
1 comparacin 2 comparaciones
4 5 11 -3 6 7
5 comparaciones
-3 4 5 6 7 11 TOTAL 10
COMPARACIONES
ORDENACIN
COMPARACIN: QUICK SORT
Ordeno con el pivote=6. 11 5 4 6 -3 7
5 comparaciones:
11 con 6, 5 con 6, 4 con 6,
-3 con 6 y 7 con 6
-3 5 4 6 11 7 Ordeno con el
Ordeno con el pivote=5. pivote=11.
2 comparaciones: 1 comparaciones:
5 con -3, 5 con 4 11 con 7
-3 4 5 7 11
Ordeno con el pivote=-3.
1 comparacin: -3 con 4
-3 4 5
TOTAL 9
COMPARACIONES