Ugh, ordenación por burbuja... No pudiste intentar aplicar QuickSort? Lo digo porque usar un algoritmo de complejidad cuadrática O(n²) cuando puedes usar uno del orden O(n log n)...
A menos que se me escape algo y en este programa específico QuickSort siempre sería Peor Caso (También O(n²))...