Stupid sort
De Wikipedia, la enciclopedia libre
Stupid sort es probablemente el algoritmo de ordenamiento conocido más sencillo. Este es utilizado para reorganizar valores en un array en orden ascendente o descendente. Su nombre se refiere a como un algoritmo tan simple e intuitivo puede tener un funcionamiento tan bajo en términos de tiempo de ejecución y uso de memoria.
Stupid-sort nunca falla en ordenar los datos en el mejor caso (que los datos ya estén en orden) con un tiempo de ejecución lineal (su mejor caso de tiempo de ejecución es O(n), donde n es el número de elementos en el array). Adicionalmente, su forma no recurrente ordena los datos-en-su-lugar, por lo cual no se necesita memoria extra para guardar los datos temporales.
A diferencia del ordenamiento de burbuja, este algoritmo de ordenamiento comienza todo otra vez si encuentra tan solo un elemento fuera de orden. Esto simplifica un poco el algoritmo y a la vez conduce a un tiempo de ejecución pobre.
Stupid sort es un algoritmo de ordenamiento estable, lo cual significa que dos valores que tengan el mismo valor se mantendrán en el mismo orden.
[editar] Stupid-sort Iterativo
El algoritmo Stupid-sort iterativo se puede describir así:
1. Inicia por el principio del array, lo examina hasta encontrar dos elementos consecutivos fuera de orden.
2. Intercambia esos dos elementos y reinicia el algoritmo (va a la línea 1).
3. El algoritmo termina cuando llega al final del arreglo.
[editar] Algoritmo
stupidSort(array) { i := 1 while i < length(array) if array[i + 1] < array[i] then { intercambia(array[i], array[i + 1]) i:=1 } else i:=i+1 }