給你-個32位的有符號整數x , 回傳將x中的數字部分反轉后的結果。
如果反轉后整數超過32位的有符號整數的范圍[-231, 231 -1] . 就回傳0。
假設環境不允許存盤64位整數(有符號或無符號)。
uj5u.com熱心網友回復:
這些實際用途不大,以后往這方面努力!uj5u.com熱心網友回復:
樓主是來打廣告的,不用回復他……[捂臉]
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
9:00給大家演算法代碼。uj5u.com熱心網友回復:
js 實作代碼如下:<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>js 整數反轉 演算法 面試題 xinbiancheng.cn</title>
</head>
<body>
</body>
<script type="text/javascript">
function reverse(x) {
let INT_MAX=2147483648; //2的31次方
let INT_MIN=-2147483647 //-2的31次方
let rev = 0;
while (x != 0) {
let remainder = x % 10;
x = parseInt(x/10);
if (rev > INT_MAX/10 || (rev == INT_MAX / 10 && remainder > 7))
return 0;
if (rev < INT_MIN/10 || (rev == INT_MIN / 10 && remainder < -8))
return 0;
rev = rev * 10 + remainder;
}
return rev;
}
console.log(reverse(123));
console.log(reverse(-123));
console.log(reverse(120));
console.log(reverse(0));
console.log(reverse(2147483648));
</script>
</html>
更多此題的解法請參考: js 整數反轉 演算法 面試題
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/269496.html
標籤:JavaScript
下一篇:一道思考題
