整數翻轉

效率低 

class Solution {
    public int reverse(int x) {
        StringBuilder bd = new StringBuilder();
        char[] chars =  String.valueOf(x).toCharArray();
        if (x == 0) {
            return 0;
        } else if (x < 0) {
            bd.append("-");
            for (int i=chars.length-1; i>0; i--) {
                bd.append(String.valueOf(chars[i]));
            }
            String target = bd.toString();
            String min = String.valueOf(Integer.MIN_VALUE);
            if (target.length() == min.length()) {
                if (target.compareTo(min) > 0) {
                    return 0;
                }
            }
            return Integer.parseInt(bd.toString());
        } else {
            for (int i=chars.length-1; i>=0; i--) {
                bd.append(String.valueOf(chars[i]));
            }
            String target = bd.toString();
            String max = String.valueOf(Integer.MAX_VALUE);
            if (target.length() == max.length()) {
                if (target.compareTo(max) > 0) {
                    return 0;
                }
            }
            return Integer.parseInt(bd.toString());
        }
    }
}

 

發佈了82 篇原創文章 · 獲贊 6 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章