1.题目
https://leetcode-cn.com/problems/plus-one/submissions/

2、实现

class Solution {
public int[] plusOne(int[] digits) {
int len=digits.length;
int additoin=1;
if(digits[len-1]!=9){
digits[len-1]+=1;
return digits;
}
for(int i=len-1;i>=0;i--){
digits[i]+=additoin;
additoin=digits[i]/10;
digits[i]=digits[i]%10;
}
if( additoin==0){
return digits;
}else{
int[] result=new int[len+1];
result[0]=1;
for(int j=0;j<len;j++){
result[j+1]=digits[j];
}
return result;
}
}
}
python
class Solution:
def plusOne(self, digits):
"""
:type digits: List[int]
:rtype: List[int]
"""
n=len(digits)
if digits[n-1]!=9:
digits[n-1]=digits[n-1]+1
return digits
carry=1
for i in range(n):
digits[n-1-i]=digits[n-1-i]+carry
carry=digits[n-1-i]//10
digits[n-1-i]=digits[n-1-i]%10
if carry==0:
return digits
else:
res=[1]
return res+digits

本文详细解析了LeetCode上Plus One问题的解决方案,通过Java和Python代码展示了如何对一个整数数组进行加一操作,重点讲解了进位处理的算法逻辑。
3378

被折叠的 条评论
为什么被折叠?



