给出用数字数组表示的一个非负整数,请对该整数加1。
思路:从最后一位开始计算,如果是9的话,就变成0,并且高位加1,如果不是,直接结束,最后需要判断最前面一位是不是0,是0的话需要增加一位1.
package main
/**
*
* @param digits int整型一维数组
* @return int整型一维数组
*/
func plusOne( digits []int ) []int {
// write code here
length := len(digits)
for i := length - 1; i >= 0; i-- {
if digits[i] == 9 {
digits[i] = 0
} else {
digits[i]++
break
}
}
if digits[0] == 0 {
digits = append([]int{1}, digits...)
}
return digits
}
该代码实现了一个功能,即给定一个表示非负整数的数字数组,对其进行加一操作。从数组的最后一个元素开始向前遍历,当遇到9时将其变为0并向高位进位,直到找到非9的数字或遍历结束。如果最前面的数字是0,需要在数组前添加1。这是一个简单的数值计算问题,常见于编程面试中。
720

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



