我是Ruby新手。我用Java编写了一个解决方案
public boolean checkOrder(String input) {
boolean x = false;
for (int i = 0; i < input.length() - 1; i++) {
if (input.charAt(i) < input.charAt(i + 1) || input.charAt(i) == input.charAt(i + 1)) {
x = true;
} else {
return false;
}
}
return x;
}
我想在ruby中做同样的事情我怎样才能将它转换成ruby。感谢。
答案 0 :(得分:9)
def checkOrder(input)
input.chars.sort == input.chars.to_a
end
答案 1 :(得分:2)
Sam的回答的变化,以防你想要这个作为String方法:
class String
def sorted?
self.chars.sort == self.chars.to_a
end
end
'abc'.sorted?
'acb'.sorted?
答案 2 :(得分:1)
根据要求:
def checkOrder(input)
x = false
(input.length-1).times do |i|
if input[i] < input[i+1] or input[i] == input[i+1]
x = true
else
return false
end
end
x
end