Очень простое сравнение будет следующим:
word.chars.sort.join == word
То, что это делает, принимает символы строки в виде массива, сортирует их по буквам и цифрам, а затем объединяет их обратно в строку. Затем эта строка сравнивается с исходной строкой, и если она равна, то переупорядочение не было выполнено, и строка уже была упорядочена.
Если вы хотите расширить это как метод до String
класса:
class String
def ordered?
chars.sort.join == self
end
end