Руби Array#sort
, по умолчанию, сортировать числа, как это, в порядке их значения:Как я могу сортировать числа так, как если бы они были словами?
[11, 12, 13, 112, 113, 124, 125, 127]
Я хотел бы отсортировать массив чисел, как это, как если бы они были слова быть алфавитный:
[11, 112, 113, 12, 124, 125, 127, 13]
Как это сделать? (В конечном счете, я хочу сделать это с помощью ключей Hash, поэтому, если вы хотите ответить именно так, все в порядке.) Также есть ли имя для этого типа сортировки?
Это кратчайшее решение. В Ruby 1.9 вы также можете использовать этот метод для сортировки массива на месте: a.sort_by! (&: To_s) – psyho
@psycho Обратите внимание, что 'sort_by!' - только 1.9.2+ (нет в 1.9.1) – Phrogz
Это существует <333 – Matchu