LeetCode筆記 7反轉整數

2021-08-25 22:06:36 字數 1020 閱讀 4586

題目:給定乙個 32 位有符號整數,將整數中的數字進行反轉。

示例 1:

輸入: 123

輸出: 321

示例 2:

輸入: -123

輸出: -321

示例 3:

輸入: 120

輸出: 21

注意:

假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 [−231,  231 − 1]。根據這個假設,如果反轉後的整數溢位,則返回 0。

思路:這道題的思路不難。對輸入引數先對10求餘數再除以10依次取出各個位置上的數,再計算出最後反轉的結果。同時要注意本題需要防止溢位,因此需要加乙個溢位的判斷。在以下的**裡,一開始為了防止溢位,將int的引數轉換為long型的引數

**:class solution

//對是否溢位進行判斷

if(resultinteger.max_value)

//資料型別轉換

return (int)result;}}

執行最快的**開始並沒有將int轉換為long,取數 的**和之前的一樣,只不過不同於之前**計算出最後反轉數的結果再進行溢位判斷,該**將判斷放在了迴圈內,每計算出result就對它進行溢位判斷。

執行最快的用例:

class solution 

// max: 2147483647

if (result > integer.max_value /10 || result * 10 == integer.max_value && pop > 7)

result = result * 10 + pop;

}while (next != 0);

return result;

}}

7 整數反轉 LeetCode

題目描述 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設...

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。很簡單,就是不...