給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。
示例 1:
輸入: 123示例 2:輸出: 321
輸入: -123示例 3:輸出: -321
輸入: 120注意:輸出: 21
假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231, 231 − 1]。請根據這個假設,如果反轉後整數溢位那麼就返回 0。
package com.leetcode.code;
/** * leetcode7-整數反轉
* * 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。
* * 示例 1:
* 輸入: 123
* 輸出: 321
* * 示例 2:
* 輸入: -123
* 輸出: -321
* * 示例 3:
* 輸入: 120
* 輸出: 21
* * 注意:
* * 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231, 231 − 1]。
* 請根據這個假設,如果反轉後整數溢位那麼就返回 0。
*/public
class
leetcode7
int abs = math.
abs(x)
, num =0;
string str =
newstringbuilder
(string.
valueof
(abs)).
reverse()
.tostring()
;try
catch
(numberformatexception e)
return num = x >
0? num :
-num;
}public
static
intreverse2
(int x)
return
(rs < integer.min_value || rs > integer.max_value)?0
:(int) rs;
}public
static
void
main
(string[
] args)
}
這道題還是蠻簡單的,怎麼通過率這麼低呢。
雖然是簡單,可以解出來。但你看第一種方法(我自己寫的方法)和第二種方法,有什麼差別呢?
我的耗時3ms,第二種只有1ms,臥槽,差了三倍的效能。
所以說,乙個好的演算法,簡潔與高效。不能給出再多的評價了。
LeetCode7反轉整數
給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123輸出 321示例 2 輸入 123輸出 321示例 3 輸入 120輸出 21注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返回 0。以字串方式思考...
LeetCode 7 反轉整數
給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123輸出 321示例 2 輸入 123輸出 321示例 3 輸入 120輸出 21注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返回 0。很簡單,就是不...
leetcode 7反轉整數
隨機一題 給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返...