Dada una matriz de cadenas, me gustaría ordenar la matriz de acuerdo con la longitud de cada elemento.
Por ejemplo...
array=(
"tiny string"
"the longest string in the list"
"middle string"
"medium string"
"also a medium string"
"short string"
)
Debería ordenar a ...
"the longest string in the list"
"also a medium string"
"medium string"
"middle string"
"short string"
"tiny string"
(Como beneficio adicional, sería bueno si la lista ordenara las cadenas de la misma longitud, alfabéticamente. En el ejemplo anterior medium string
se ordenó antes middle string
aunque sean de la misma longitud. Pero eso no es un requisito "difícil", si complica demasiado solución).
Está bien si la matriz se ordena in situ (es decir, se modifica "matriz") o si se crea una nueva matriz ordenada.