非空整数数组表示的整数加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
思路
解题思路 刚开始考虑的是将数组转为整数加一之后,在把整数转为数组,感觉比较麻烦。后来看到评论里面提到 直接从数组着手处理,就尝试做了一下;从最后一个元素开始循环,首先判断是否继续循环(若元素不等于9,直接当前元素加一跳出循环,输出结果;若当前元素为9,当前元素值为零,进入下一循环);但是也报错了,没有考虑到9,99,9
代码实现
public int[] plusOne(int[] digits) {
for (int i= digits.length-1; i>=0; i--) {
int singleresult = digits[i];
if(singleresult==9){
digits[i]=0;
if(i==0){
digits = new int[digits.length + 1];
digits[0]=1;
}
}else{
digits[i]=digits[i]+1;
break;
}
}
return digits;
}
这篇博客探讨了如何对一个用非空整数数组表示的非负整数进行加一操作。博主首先介绍了通过将数组转换为整数再转换回数组的思路,但认为这种方法较为复杂。接着,博主分享了另一种直接从数组入手的解决方案,从数组的最后一个元素开始循环,检查每个元素是否等于9。如果元素不等于9,则直接加一并结束循环;如果元素为9,则置为0并继续检查前一个元素。然而,这种方法未处理边界情况,如9, 99, 999等。"
82759354,6811787,测试需求分析:关键步骤与提升技巧,"['测试方法', '需求管理', '软件测试', '项目管理']
5247

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



