摘要:每日一題整數(shù)反轉(zhuǎn)鏈接整數(shù)反轉(zhuǎn)題目分析題目不是很難但是細(xì)節(jié)很多并且不允許存儲(chǔ)位整數(shù)需要考慮很多的東西在之后的代碼部分逐一分析代碼標(biāo)記一下正數(shù)還是負(fù)數(shù)負(fù)數(shù)的最小值反轉(zhuǎn)后超出了范圍提前范圍避免下面的報(bào)錯(cuò)依次取出最低
題目不是很難,但是細(xì)節(jié)很多,并且不允許存儲(chǔ)64位整數(shù),需要考慮很多的東西.在之后的代碼部分逐一分析.
C++
class Solution {public: int reverse(int x) { int f = 1; // 標(biāo)記一下正數(shù)還是負(fù)數(shù) if(x < 0) f = -1; int maxn = INT_MAX; int inf = INT_MIN; int res = 0; // 負(fù)數(shù)的最小值反轉(zhuǎn)后超出了范圍,提前范圍,避免下面的abs報(bào)錯(cuò) if(x == inf) return 0; x = abs(x); while(x > 0) { // 依次取出最低位 int t = x % 10; // 如果當(dāng)前res * 10 > maxn,那么就超出了范圍 if(res > maxn / 10) return 0; // 不超范圍就更新res的值 res = res * 10 + t; // 更新x的值 x /= 10; } // 返回帶標(biāo)志位的res return f * res; }};
Java
官方題解沒有轉(zhuǎn)化成正數(shù)求解,而是一起計(jì)算
class Solution { public int reverse(int x) { int rev = 0; while (x != 0) { if (rev < Integer.MIN_VALUE / 10 || rev > Integer.MAX_VALUE / 10) { return 0; } int digit = x % 10; x /= 10; rev = rev * 10 + digit; } return rev; }}作者:LeetCode-Solution
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/123182.html
摘要:題目旋轉(zhuǎn)數(shù)組給定一個(gè)數(shù)組,將數(shù)組中的元素向右移動(dòng)個(gè)位置,其中是非負(fù)數(shù)。例如將到反轉(zhuǎn)將到反轉(zhuǎn)全部翻轉(zhuǎn)得到最后結(jié)果。這里要注意下還有這樣的情況即大于數(shù)組長(zhǎng)度的情況。次旋轉(zhuǎn)次旋轉(zhuǎn)轉(zhuǎn)回來(lái)了次旋轉(zhuǎn)次旋轉(zhuǎn)轉(zhuǎn)回來(lái)了次旋轉(zhuǎn)所以這里的有效等于對(duì)數(shù)組長(zhǎng)度求余。 題目: 旋轉(zhuǎn)數(shù)組 給定一個(gè)數(shù)組,將數(shù)組中的元素向右移動(dòng) k 個(gè)位置,其中 k 是非負(fù)數(shù)。 示例: 輸入: [1,2,3,4,5,6,7] 和 k...
摘要:關(guān)于遞歸這里提一兩點(diǎn)遞歸基本有這幾步遞歸的模板,終止條件,遞歸調(diào)用,邏輯處理。 ?作者簡(jiǎn)介:大家好,我是車神哥,府學(xué)路18號(hào)的車神? ?個(gè)人主頁(yè):應(yīng)無(wú)所住而生...
摘要:先實(shí)現(xiàn)棧操作遍歷鏈表,把每個(gè)節(jié)點(diǎn)都進(jìn)中然后再遍歷鏈表,同時(shí)節(jié)點(diǎn)依次出棧,二者進(jìn)行比較。 ?作者簡(jiǎn)介:大家好,我是車神哥,府學(xué)路18號(hào)的車神? ?個(gè)人主頁(yè):應(yīng)無(wú)...
閱讀 3117·2023-04-26 02:27
閱讀 2855·2021-11-22 13:54
閱讀 950·2021-11-12 10:36
閱讀 3816·2021-10-09 09:44
閱讀 3220·2021-10-09 09:41
閱讀 1299·2021-09-22 10:02
閱讀 2923·2019-08-30 15:56
閱讀 3156·2019-08-30 11:02