标签:基础 需要 self int col word div its list
题目描述:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。
具体思路:这里的加一可以分为三种情况:
1 class Solution: 2 def plusOne(self, digits: List[int]) -> List[int]: 3 for i in range(1,len(digits)+1): 4 if digits[-i] != 9: #倒序遍历 5 digits[-i] += 1 6 return digits 7 digits[-i] = 0 #为9的位数置0 8 digits.insert(0,1) #如果需要进位则在首位插入1 9 return digits
另一种方法是,利用字符串和整型的转换直接来做,不涉及到什么算法
1 class Solution: 2 def plusOne(self, digits: List[int]) -> List[int]: 3 di_str = ‘‘ 4 for number in digits: 5 di_str += str(number) 6 di_num = int(di_str)+1 #将列表中的元素拼接成字符串后再转换为整型来加一 7 digits = [] #再转换成列表输出 8 for word in str(di_num): 9 digits.append(int(word)) 10 return digits
标签:基础 需要 self int col word div its list
原文地址:https://www.cnblogs.com/shawn-young/p/12579386.html