Desde el punto de vista de la memoria, creo que es más fácil situar un elemento nuevo que situar un array. Por eso lo decía.
Ahora, queda muy bonito ^^
El problema es que con tu código no se pordría ordenar, igual que con mi primer código. Pero como dijiste lo de lo complicado que sería crear un array de manera dinámica y sin tener de antemano la dimensión es por lo que he puesto este segundo código. Vamos que me "picastes",