Este documento presenta el algoritmo de ordenamiento Shake Sort para ordenar un arreglo de números. Primero se ingresan los elementos del arreglo y luego se repite el proceso de ordenar desde la derecha hacia la izquierda y luego desde la izquierda hacia la derecha hasta que los extremos del arreglo coincidan. Finalmente, imprime el arreglo ordenado.
2. cout<<"["<<(i+1)<<"]=";
cin>>jona[i];
}
izq=1;
der=n;
k=n;
// EL (DO=REPETIR) PARA QUE SE REPITA VARIAS VECES.
do
{
for(i=der;i>=izq;i--) // Esta ordenando de derecha a izquierda
{
// para valores MENORES
if(jona[i-1]>jona[i])
{
aux=jona[i-1];
jona[i-1]=jona[i];
jona[i]=aux;
k=i;
}
}
izq=k+1;
for(i=izq;i<=der;i++) // ordenando de izquierda a derecha
{
// para valores MAYORES
if(jona[i-1]>jona[i])
{
aux=jona[i-1];