首页 > 试题广场 >

给数组加一

[编程题]给数组加一
  • 热度指数:2182 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个用数组表示的数字,即数组中每个数表示一个数位上的数,例如 [1,2,3],表示 123 ,请问给这个数字加一后得到的结果(结果同样以数组的形式返回)。

注意:数组中不可能出现负数,且保证数组的首位即数字的首位不可能是 0 。

数据范围: 数组长度满足 ,数组中每个数满足
示例1

输入

[1,2,3]

输出

[1,2,4]
示例2

输入

[1,9]

输出

[2,0]
示例3

输入

[9]

输出

[1,0]
package main
import _"fmt"

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param nums int整型一维数组 
 * @return int整型一维数组
*/
func plusOne( nums []int ) []int {
    carry:=1
    for i:=len(nums)-1;i>=0;i--{
        carry+=nums[i]
        if carry!=10{
            nums[i]=carry
            carry=0
            break
        }else{
            nums[i]=0
            carry=1
        }
    }
    if carry==1{
        nums=append([]int{1},nums...)
    }
    return nums
}

发表于 2023-03-08 20:02:27 回复(0)