国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

leetcode 翻轉數字

2019-11-06 08:20:37
字體:
來源:轉載
供稿:網友
翻轉數字,很有意思的一道題。題目如下:Reverse digits of an integer.Example1: x = 123, return 321Example2: x = -123, return -321click to show spoilers.Note:The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.Subscribe to see which companies asked this question.可以看到,題目要求如果翻轉之后數字超過32位int范圍 需要返回0記得int型的范圍是[-2^31,2^31-1],因此Integer.MIN_VALUE如果去掉符號,是超出了范圍的。寫代碼的時候要單獨注意一下這個細節。java中常用的取絕對值函數Math.abs(int),如果結果超出int范圍,則會返回原始數值,不會進行取絕對值操作。我的代碼如下:
public class Solution {    public int reverse(int x){        int flag=0;        if(x==-2147483648){            return 0;        }        if(x<0){            x=-x;            flag=1;        }        String temp1=x+"";        double temp2=0.0;        String temp3="";        Stack<Character> stack=new Stack<>();        char[] charArray=temp1.toCharArray();        for(int i=0;i<charArray.length;i++){            stack.push(charArray[i]);        }        while(!stack.empty()){            temp3+=stack.pop();        }        temp2=Double.parseDouble(temp3);        if(temp2>Integer.MAX_VALUE||temp2<Integer.MIN_VALUE){            return 0;        }        else{            if(flag==0)                return (int)temp2;            else                return -(int)temp2;        }    }}?
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湄潭县| 公安县| 崇明县| 安阳市| 丁青县| 潼南县| 瑞丽市| 乐都县| 堆龙德庆县| 寿宁县| 永吉县| 蓝田县| 建平县| 饶河县| 朝阳市| 鲁甸县| 瑞金市| 上林县| 门头沟区| 昭觉县| 泰安市| 易门县| 枣强县| 兰溪市| 柳江县| 郁南县| 商城县| 宁乡县| 名山县| 彭水| 疏附县| 温泉县| 东兴市| 凤凰县| 华安县| 高阳县| 桃江县| 从江县| 株洲市| 赤水市| 西城区|