Dada uma matriz de seqüências de caracteres, eu gostaria de classificar a matriz de acordo com o comprimento de cada elemento.
Por exemplo...
array=(
"tiny string"
"the longest string in the list"
"middle string"
"medium string"
"also a medium string"
"short string"
)
Deve classificar para ...
"the longest string in the list"
"also a medium string"
"medium string"
"middle string"
"short string"
"tiny string"
(Como um bônus, seria bom se a lista classificasse seqüências de caracteres do mesmo tamanho em ordem alfabética. No exemplo acima, medium string
foi ordenada antes middle string
mesmo que sejam do mesmo tamanho. Mas esse não é um requisito "difícil", se complicar demais o solução).
Tudo bem se a matriz for classificada no local (por exemplo, "matriz" for modificada) ou se uma nova matriz classificada for criada.