溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Reverse Integer

發(fā)布時間:2020-08-11 06:33:02 來源:ITPUB博客 閱讀:135 作者:壹頁書 欄目:編程語言

Reverse digits of an integer.

Example1: x = 123, return 321
Example2: x = -123, return -321

click 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.


1.先記錄符號
2.最后檢查是否溢出int的范圍


  1. class Solution {
  2.     public int reverse(int x) {
  3.         boolean flag=(x>=0)?true:false;
  4.         long data=1;
  5.         int[] arr=new int[10];
  6.         int index=0;
  7.         x=Math.abs(x);
  8.         while(x>0){
  9.             arr[index]=x % 10;
  10.             x=x/10;
  11.             index++;
  12.         }

  13.         long result=0L;
  14.         for(int i=index-1;i>=0;i--){
  15.             result=result+arr[i]*data;
  16.             data=data*10;
  17.         }
  18.         if(result>Integer.MAX_VALUE || result<Integer.MIN_VALUE){
  19.             return 0;
  20.         }
  21.         return flag==true?(int)result:-(int)result;
  22.     }
  23. }

網絡答案

  1. class Solution {
  2.      public int reverse(int x) {
  3.          long rev= 0;
  4.          while( x != 0){
  5.              rev= rev*10 + x % 10;
  6.              x= x/10;
  7.              if( rev > Integer.MAX_VALUE || rev < Integer.MIN_VALUE)
  8.                  return 0;
  9.          }
  10.          return (int) rev;
  11.      }
  12. }

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI