將字串反轉並回傳
思考邏輯:就反過來
def reverse_string(s)
s.reverse!
end
var reverseString = function(s) {
return s.reverse()
};
將整數做倒轉,例如123變321,456變654
思考邏輯:將input除以10以後取餘數,然後一個個放入ans中,過程中要先判斷是否發生overflow,若有直接回傳0;接著判斷是正整數還是負整數
def reverse(x)
return 0 if x.bit_length >= 32
if x>1
ans = reverse_x(x)
elsif x<0
ans = -reverse_x(-x)
else
return x
end
return ans if ans.bit_length < 32
return 0
end
def reverse_x(x, ans = 0)
n = Math.log10(x).floor+1
n.times do
pop = x % 10
x /= 10
ans = ans * 10 + pop
end
ans
end
小結: