Java刷題隨筆---066. 加一

LeetCode鏈接

難度:簡單
題目描述:給定一個由 整數(shù) 組成的 非空 數(shù)組所表示的非負整數(shù),在該數(shù)的基礎上加一。
最高位數(shù)字存放在數(shù)組的首位, 數(shù)組中每個元素只存儲單個數(shù)字。
你可以假設除了整數(shù) 0 之外,這個整數(shù)不會以零開頭。

分析:

本題主要分為兩種情況:
1- 數(shù)組中沒有9 ---> 則在最后一位直接加一,例如:[1,2,3,4] ---> [1,2,3,5]
2- 數(shù)組中有9,同時也分為兩種情況:
     2.1- 數(shù)組中的9并不會導致最后數(shù)組長度增加,例如: [1,2,3,9] ---> [1,2,4,0]
     2.2- 數(shù)組中的9會導致最后數(shù)組長度增加,例如: [9,9] ---> [1,0,0]

解題:

位數(shù)為9則變?yōu)?即可,不是9則加一即可。

class Solution {
        public int[] plusOne(int[] digits) {
            int n = digits.length;
            for (int i = n - 1; i >= 0; i--) {
                if (digits[i] != 9) {
                    digits[i]++;
                    for (int j = i + 1; j < n; j++) {
                        digits[j] = 0;
                    }
                    return digits;
                }
            }
            int[] result = new int[n + 1];
            result[0] = 1;

            return result;
        }
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 加一 題目描述:給定一個由 整數(shù) 組成的 非空 數(shù)組所表示的非負整數(shù),在該數(shù)的基礎上加一。最高位數(shù)字存放在數(shù)組的首...
    醉舞經(jīng)閣半卷書閱讀 109評論 0 1
  • 題目描述:給定一個由 整數(shù) 組成的 非空 數(shù)組所表示的非負整數(shù),在該數(shù)的基礎上加一。最高位數(shù)字存放在數(shù)組的首位, ...
    Zy_0818閱讀 157評論 0 0
  • 來源:力扣(LeetCode)鏈接:https://leetcode-cn.com/problems/plus-o...
    公孫劍人閱讀 159評論 0 0
  • 給定一個由 整數(shù) 組成的 非空 數(shù)組所表示的非負整數(shù),在該數(shù)的基礎上加一。 最高位數(shù)字存放在數(shù)組的首位, 數(shù)組中每...
    刻苦驢噥閱讀 162評論 0 0
  • leetcode 鏈接[https://leetcode-cn.com/problemset/lcof/] 3、數(shù)...
    漫徹思特閱讀 368評論 0 0

友情鏈接更多精彩內(nèi)容