整數反轉
難度:簡單
給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。
示例 1:
輸入: 123
輸出: 321
示例 2:
輸入: -123
輸出: -321
示例 3:
輸入: 120
輸出: 21
注意:
假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231, 231 − 1]。請根據這個假設,如果反轉後整數溢位那麼就返回 0。
題目分析:
主要考慮溢位的情況,如果直接使用stoi函式轉換成string,會有問題,因為stoi輸入的最大值就是int的最大值。所以乾脆使用long long int來儲存結果,在和int的最大值和最小值比較。這邊還有個問題就是不需要做取餘(%)和除法(/)運算,不需要考慮正負號,直接做運算即可。
錯誤**:
class solution
if (str.size() == res.size() && str < res)
return 0;
else
}else if (x > 0)
if (str.size() == res.size() && str < res)
return 0;
else
}else
}};
class solution
if (rev > int_max || rev < int_min) return 0;
return rev;
}};
LeetCode第七題整數反轉
題目 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例示例 1 示例 2 示例 3 輸入 123 123 120輸出 321 321 21注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數溢位那麼就返...
LeetCode第七題 整數反轉
題目描述如下 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。輸入 123 輸出 321 輸入 123 輸出 321 輸入 120 輸出 21 注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 int型別能表示數。請根據這個假設,如果反轉後整數溢位那麼就...
LeetCode第七題 整數反轉
給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123輸出 321示例 2 輸入 123 輸出 321示例 3 輸入 120輸出 21注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 231,231 1 請根據這個假設,如果反轉後整數溢位...