国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【LeetCode Easy】007 Reverse Integer

Sourcelink / 2768人閱讀

摘要:第一時間想到這是經(jīng)典的取模取余運算,但是寫的過程中遇到了很多問題這么簡單一題基礎(chǔ)做法取一個整數(shù)的最后一位數(shù)字只要把這個整數(shù)就可以,要取除最后一位數(shù)字之外的其它數(shù)字只要是沒有長度函數(shù)的,需要轉(zhuǎn)化成才能使用長度函數(shù)用這個方法最大的難點在

Easy 007 Reverse Integer Description:
Given a 32-bit signed integer, reverse digits of an integer.
Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [?2^31,? 2^31?? 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.
==Example==
123→321 -123→-321 120→21
My Solution:

第一時間想到這是經(jīng)典的取模取余運算,但是寫的過程中遇到了很多問題QAQ(這么簡單一題

基礎(chǔ)做法:取一個整數(shù)的最后一位數(shù)字只要把這個整數(shù) % 10就可以,要取除最后一位數(shù)字之外的其它數(shù)字只要 / 10

int是沒有長度函數(shù)的,需要轉(zhuǎn)化成String才能使用長度函數(shù)

用這個方法最大的難點在于用int類型時處理溢出問題,原本沒有溢出的數(shù)字在進行翻轉(zhuǎn)時很有可能溢出,最合適的方法是在處理過程中進行預(yù)判

假設(shè)翻轉(zhuǎn)過程的中間值用res來保存,每次取下來的那個數(shù)字用pop來保存,overflow = 2147483646,underFlow = -2147483647

已知當(dāng)res * 10 + pop 會引起溢出時,res必定是 ≥ (max / 10)或 ≤ (min / 10)的,其中相等時對pop有要求

根據(jù)上述條件在翻轉(zhuǎn)時進行溢出預(yù)判

Java代碼:

  public static int reverse(int x) {
      int overFlow = (int)Math.pow(2,31) -1;     //overFlow = 2147483646
      int underFlow = 0 - (int)Math.pow(2,31);   //underFlow = -2147483647
      int pop = 0;
      int result = 0;

      while(x != 0){
          pop = x % 10;
          if((result>overFlow/10) || (result==overFlow/10 && pop>7))
              return 0;
          if((result

Fast Solution:

題目中要求的溢出條件其實是針對int型數(shù)據(jù)的,這題用Java來寫的話其實可以用long類型

Java代碼:

 public int reverse(int x) {
     long res = 0;   //此處用了long
     while (x != 0) {
         res = res * 10 + x % 10;
         x = x / 10;
     }
     return (int)res == res ? (int)res : 0;   
 }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/74237.html

相關(guān)文章

  • 前端 | 每天一個 LeetCode

    摘要:在線網(wǎng)站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個題。這是項目地址歡迎一起交流學(xué)習(xí)。 這篇文章記錄我練習(xí)的 LeetCode 題目,語言 JavaScript。 在線網(wǎng)站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...

    張漢慶 評論0 收藏0
  • LeetCode - 007 - 整數(shù)反轉(zhuǎn)(reverse-integer

    摘要:詳細介紹將其他值轉(zhuǎn)成數(shù)字值。此方法更改數(shù)組的長度。詳細介紹解題思路首先,將傳入的數(shù)字轉(zhuǎn)換成字符串,并分割成數(shù)組。本許可協(xié)議授權(quán)之外的使用權(quán)限可以從處獲得。 Create by jsliang on 2019-05-19 09:42:39 Recently revised in 2019-05-19 16:08:24 Hello 小伙伴們,如果覺得本文還不錯,記得給個 star , 小伙伴們...

    venmos 評論0 收藏0
  • leetcode-Easy-第2期:Reverse Interger

    摘要:題目反轉(zhuǎn)整數(shù)反轉(zhuǎn)后的整數(shù)如果不在范圍則返回簡單解法耗時解法二獲取余數(shù),即從右邊第一位開始的數(shù)字保留整數(shù)部分解題思路跳出循環(huán),判斷是否在最大值和最小值之間知識點復(fù)習(xí)小于的最大整數(shù)返回四舍五入返回的整數(shù)部分,包含正負號 題目 Given a 32-bit signed integer, reverse digits of an integer. 反轉(zhuǎn)整數(shù)反轉(zhuǎn)后的整數(shù)如果不在[?2^31, ...

    Tecode 評論0 收藏0
  • leetcode部分題目答案之JavaScript版

    摘要:自己沒事刷的一些的題目,若有更好的解法,希望能夠一起探討項目地址 自己沒事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...

    alphahans 評論0 收藏0
  • Leetcode 7 Reverse Integer 倒序整數(shù)

    摘要:原題目為難度此題讓我們輸出給定一個整數(shù)的倒序數(shù)比如倒序為倒序為但是如果倒序的過程中發(fā)生整型溢出我們就輸出倒序不復(fù)雜關(guān)鍵在于如何判定將要溢出最終的程序如下其中是獲取的個位數(shù)字判定下一步是否將要溢出使用 原題目為: Reverse digits of an integer.Example1: x = 123, return 321Example2: x = -123, return -3...

    LoftySoul 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<