(leetcode)66. 加一
阿新 • • 發佈:2018-12-14
題目描述:
給定一個由整數組成的非空陣列所表示的非負整數,在該數的基礎上加一。
最高位數字存放在陣列的首位, 陣列中每個元素只儲存一個數字。
你可以假設除了整數 0 之外,這個整數不會以零開頭。
示例 1:
輸入: [1,2,3] 輸出: [1,2,4] 解釋: 輸入陣列表示數字 123。
示例 2:
輸入: [4,3,2,1] 輸出: [4,3,2,2] 解釋: 輸入陣列表示數字 4321。
先說一下個人解題思路,這個題比較簡單,我是先把列表轉化為數字,然後再將數字轉化為字元,通過遍歷字元將字元轉化為列表
程式碼奉上:
class Solution: def plusOne(self, digits): """ :type digits: List[int] :rtype: List[int] """ """列表轉化為數字""" nums = 0 for i in digits: nums = nums * 10 + i nums = nums + 1 """數字轉化為字元""" str_nums = str(nums) """字元轉化為列表""" res = [] for i in str_nums: res.append(int(i)) return res if __name__ == '__main__': S = Solution() res = S.plusOne([4,3,2,1])#測試列表 res1 =S.plusOne([7,8,5,9,9])#測試列表 print(res) print(res1) 輸出結果: [4, 3, 2, 2] [7, 8, 6, 0, 0] Process finished with exit code 0
程式碼小白,敬請指正