給定乙個由整數組成的非空陣列所表示的非負整數,在該數的基礎上加一。最高位數字存放在陣列的首位,陣列中每個元素只儲存單個數字。你可以假設除了整數 0 之外,這個整數不會以零開頭。
這裡用到了遞迴的方法,最後乙個元素加一,如果最後乙個元素加一之後大於9,就進製:本位歸零,上一位加一,再檢測上一位,如果上一位加一後大於9…
只要前一位不大於9,就退出遞迴
class
solution
:def
plusone
(self, digits: list[
int])-
> list[
int]
:def
hbk(flag)
:if flag ==0:
#如果是首位大於9
digits[flag]=0
# 歸零
digits.insert(0,
1)# 插入新的首位 1
else
: digits[flag]=0
digits[flag-1]
+=1lens =
len(digits)-1
digits[lens]+=1
while1:
if digits[lens]
>9:
hbk(lens)
lens -=
1else
:return digits
每日演算法 加一
給定乙個由 整數 組成的 非空 陣列所表示的非負整數,在該數的基礎上加一。最高位數字存放在陣列的首位,陣列中每個元素只儲存單個數字。你可以假設除了整數 0 之外,這個整數不會以零開頭。示例 1 輸入 digits 1 2,3 輸出 1,2,4 解釋 輸入陣列表示數字 123。示例 2 輸入 digi...
演算法小練 加一
title 演算法小練 加一 date 2019 11 09 19 43 59 categories 給定乙個由整數組成的非空陣列所表示的非負整數,在該數的基礎上加一。最高位數字存放在陣列的首位,陣列中每個元素只儲存單個數字。你可以假設除了整數 0 之外,這個整數不會以零開頭。示例 1 輸入 1,2...
演算法題3 加一
題目描述 給定乙個由整數組成的非空陣列所表示的非負整數,在該數的基礎上加一。最高位數字存放在陣列的首位,陣列中每個元素只儲存單個數字。你可以假設除了整數 0 之外,這個整數不會以零開頭。示例 1 輸入 1,2,3 輸出 1,2,4 解釋 輸入陣列表示數字 123。示例 2 輸入 4,3,2,1 輸出...