ReverseInteger 給出一個整數,反轉這個整數
package leetcode151withexplain;
/**
* 本題題意:給出一個整數,反轉這個整數
*
* Example1: x = 123, return 321
Example2: x = -123, return -321
*
* 解題思路:通過取餘數就能知道最後的數字是什麼,然後依次乘以10加剛獲取的末尾元素。然後別忘了最後情況的處理。
*
*/
public class ReverseInteger145 {
public int reverse(int x) {
//如果介於0-10之間或者0--10之間 單位數 直接返回
if(x > 0 && (x/10) < 1){
return x;
}else if(x < 0 && (x/10) > -1){
return x;
}
//處理整數比較方便 所以用y來儲存
int y = 0;
if(x > 0){
y = x;
}else{
y = -x;
}
//獲取最後一位 然後依次加上
int result = 0;
while(y / 10 >= 1){
int lastNum = y % 10;
result = result*10 + lastNum;
y = y/10;
}
//別忘了最後剩餘資料的處理
result = result*10 + y;
if(x > 0){
return result;
}else{
return 0-result;
}
}
}