Un algoritmo de clasificación es un algoritmo que pone elementos de una lista en un cierto orden. Las órdenes más utilizadas son orden numérica y orden lexicográfico. Clasificación eficiente es importante para optimizar el uso de otros algoritmos (como los algoritmos de búsqueda y fusión) que requieren listas ordenadas para trabajar correctamente; también es a menudo útil para canonicalizing datos y para la producción de salida legibles. Más formalmente, la salida debe satisfacer dos condiciones:
-La salida es en no disminuir orden (cada elemento es no más pequeño que el elemento anterior según el orden deseado de total);
-La salida es una permutación (reordenación) de la entrada.
-Clasificación es una de las funciones claves
para muchos usos tales como decodificadores para la comunicación digital, procesamiento digital de señales, VLSI CAD etc.. Como consecuencia, hay gran interés en acelerar clasificación en software como en hardware.
-El tiempo en la clasificación dependiendo del número de palabras en el caso de algoritmos de software la mejora que estamos tratando de hacer en este proyecto es que el tiempo depende de la cantidad de bits por palabra k y no el número de palabras