Um cara teve a ideia de criar um site com animações comparando diversos tipos de algoritmos, com diferentes configurações e tamanhos de entrada.
Você pode escolher rodar os algoritmos com entrada aleatória, entrada quase ordenada*, em ordem decrescente e com vários valores repetidos (poucos valores únicos).
Muito bom!
http://www.sorting-algorithms.com/
E o site ainda traz discussões sobre como diferentes algoritmos se comportam com as diferentes entradas, além de mostrar o passo a passo de cada um deles (Inserção, Seleção, Bolha, Shell, Merge, Heap, Quick e Quick3, um tipo especial de Quick Sort que divide a entrada em 3 partições, a cada iteração).
Não deixem de conferir.
* entrada quase ordenada: tipo de entrada que pode ser em intervalos de ordem (I1, I2, ..., Ik), tais que se x está em Ia e y está em Ib e a > b, então x > y.