力扣刷題(7. 整數反轉)

題目描述

題目直接截圖於力扣(LeetCode)。算法

該題網址:https://leetcode-cn.com/problems/reverse-integer/spa

用到的算法思想

  無。須要注意的是數值越界,int型能表示的最大範圍是【負2的31次】到【2的31次-1】之間,而在反轉時,有些方法須要進行 【*10】操做,有可能越界。code

思路

  有許多種方法,好比能夠轉爲字符,而後換過位置後再轉回數字。blog

  此題的標籤是【簡單】,但我卻依舊借鑑了別人的思路,感受有些羞愧。leetcode

代碼實現(C)

一、借鑑class

  代碼簡介,思路清晰。方法

int reverse(int x){ long r = 0; // int型會在【*10】時發生數值溢出(越界),因此用long型。 while(x){ r *= 10; if(r > 2147483647 || r < -2147483648) // 兩個數字分別是整形能表示的最大值與最小值。 return 0; r += x % 10; x /= 10; } return r;
}
ps : 每次提交時的運行時間會由於各類因素而快慢有所不一樣.....
    過兩天再試試別的方法

完成時間

  2021-01-18 13:16:16im

相關文章
相關標籤/搜索