LeetCode | 66.加一

这道题有多个思路,可以依次取数组的每一位,乘10后加下一位,直到最后一位,就得到我们数组所表示的数字,然后加一,然后把新得到的数字再转化为对应的数组,我的做法是直接取数组的最后一位,加1即可,但是这里有坑,需要额外的判断,比如说,末尾是9,需要变为0,前一位加1,又比如说类似9、99、999、9999这样的数字需要全变为0,再在首位添上1,增加多这些判断即可

python 复制代码
class Solution(object):
    def plusOne(self, digits):
        """
        :type digits: List[int]
        :rtype: List[int]
        """
        i = len(digits) - 1
        if digits[i] == 9:
            while digits[i] == 9:
                digits[i] = 0
                i -= 1
            if i < 0:
                digits.insert(0, 1)
            else:
                digits[i] += 1
        else:
            digits[-1] += 1
        return digits
相关推荐
haing2019几秒前
卡尔曼滤波(Kalman Filter)原理
线性代数·算法·机器学习
Dev7z2 分钟前
基于深度学习的泳池溺水行为检测算法设计
人工智能·深度学习·算法
Pluchon5 分钟前
硅基计划4.0 算法 优先级队列
数据结构·算法·排序算法
Swift社区9 分钟前
LeetCode 375 - 猜数字大小 II
算法·leetcode·swift
sunfove11 分钟前
从“锯齿”到“光滑”:相位解包裹 (Phase Unwrapping) 算法深度解析
算法
DuHz18 分钟前
自动驾驶雷达干扰缓解:探索主动策略论文精读
论文阅读·人工智能·算法·机器学习·自动驾驶·汽车·信号处理
漫随流水21 分钟前
leetcode算法(257.二叉树的所有路径)
数据结构·算法·leetcode·二叉树
liu****23 分钟前
神经网络基础
人工智能·深度学习·神经网络·算法·数据挖掘·回归
有一个好名字24 分钟前
力扣-二叉树的最大深度
算法·leetcode·深度优先
Aaron158824 分钟前
基于RFSOC 49DR+VU13P的64通道VPX架构波束成形技术分析
c语言·人工智能·算法·架构·信息与通信·信号处理·基带工程