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

資訊專欄INFORMATION COLUMN

[Leetcode] Plus One 加一

shmily / 3376人閱讀

摘要:不過這里有個小技巧,因為我們只要加,所以不用完全模擬加法的所有規則一個數如果不是,那加以后不會對其他位產生影響。

Plus One

Given a non-negative number represented as an array of digits, plus one to the number.

The digits are stored such that the most significant digit is at the head of the list.

遇九置零法 復雜度

時間 O(N) 空間 O(1)

思路

簡單的加法運算。這里需要注意的是,數字的最高位的下標是0,最低位下標是length-1,所以我們要從后向前模擬加法。不過這里有個小技巧,因為我們只要加1,所以不用完全模擬加法的所有規則:一個數如果不是9,那加1以后不會對其他位產生影響。根據這個思路,我們先把末尾所有連續的9置0,然后對從后往前第一個不是9的數加1就行了。如果越界的話,說明原數全是9,那就要建個新數組存放結果。

注意

System.arraycopy(src, 0, dst, 0, length) 可以用來高效拷貝數組

代碼
public class Solution {
    public int[] plusOne(int[] digits) {
        int i = digits.length - 1;
        // 從后向前把所有連續9置0,直到不是9
        while(i >= 0 && digits[i] == 9){
            digits[i] = 0;
            i--;
        }
        // 如果越界,則拷貝一個新數組并在最前面置1
        if(i < 0){
            int[] res = new int[digits.length + 1];
            System.arraycopy(digits, 0, res, 1, digits.length);
            res[0] = 1;
            return res;
        } else {
        // 否則,將第一個不是9的數字加1就行了
            digits[i] += 1;
            return digits;
        }
    }
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64583.html

相關文章

  • Leetcode加一 (java、python3)

    摘要:加一給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。示例輸入輸出解釋輸入數組表示數字。思路指針從最后往前移動,若值為逐個加一,并賦值。不等于則退出循環。首位如果為是則證明需要進一。只需首位賦值即可。 加一 給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。 最高位數字存放在數組的首位, 數組中每個元素只存儲一個數字。 你可以假設除了整數 0 之外,這個...

    沈建明 評論0 收藏0
  • Leetcode加一 (java、python3)

    摘要:加一給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。示例輸入輸出解釋輸入數組表示數字。思路指針從最后往前移動,若值為逐個加一,并賦值。不等于則退出循環。首位如果為是則證明需要進一。只需首位賦值即可。 加一 給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。 最高位數字存放在數組的首位, 數組中每個元素只存儲一個數字。 你可以假設除了整數 0 之外,這個...

    Apollo 評論0 收藏0
  • leetcode66 將數組表示的非負整數加一

    摘要:題目要求一個非負整數被表示為一個數組,數組中每一個元素代表該整數的一個位。數組的下標越小,代表的位數越高。現在對該數組做加一運算,請返回結果數組。 題目要求:一個非負整數被表示為一個數組,數組中每一個元素代表該整數的一個位。數組的下標越小,代表的位數越高?,F在對該數組做加一運算,請返回結果數組。 /** * @author rale * * Given a non-negativ...

    QLQ 評論0 收藏0
  • leetcode 66 Plus One

    摘要:題目詳情題目的意思是,給你一個用數組表示的一個非負整數。你需要返回這個整數加后,所對應的數組。解法一主要需要關注的點就在于,當末尾數字為的時候的進位情況。如果不需要進位了,則代表循環可以結束了。 題目詳情 Given a non-negative integer represented as a non-empty array of digits, plus one to the in...

    ytwman 評論0 收藏0
  • [LeetCode/LintCode] Plus One

    Problem Given a non-negative number represented as an array of digits, plus one to the number. The digits are stored such that the most significant digit is at the head of the list. Example Given [1,2...

    sunsmell 評論0 收藏0

發表評論

0條評論

shmily

|高級講師

TA的文章

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