【Python3】巧用内置切片解决力扣66.加一 📅 2026/6/26 2:20:07 【Python3】利用python3内置切片解决力扣66.加一思路-核心思想通过模拟手算加法来实现 -具体思路核心逻辑 -逆序定位第一个非 9 数字从数组末尾个位向开头最高位遍历。 由于加 1 只会影响末尾连续的一段 9我们只需找到从右往左第一个不是 9 的数字。 -执行加一与归零 -将该数字 1例如 2 变成 3。 -因为该数字后面的所有低位必然都是 9加 1 后这些位必须全部变成 0。 -处理完毕后直接返回原数组。 -处理全是 9 的极端情况如果循环遍历完整个数组都没找到非 9 数字如 [9, 9] 说明原数是 99...9。此时加 1 后结果为 100...0长度增加 1直接构造新数组返回。 -点睛之笔利用python自带的“切片赋值”批量替代内层循环斩杀 for 循环具体代码classSolution:defplusOne(self,digits:List[int])-List[int]:nlen(digits)foriinrange(n-1,-1,-1):ifdigits[i]!9:digits[i]1# for j in range(i1, n):# digits[j] 0# 内置切片置0digits[i1:][0]*(len(digits)-i-1)returndigits# 遍历后数组中的元素全为9# digits [0]* (n1)# digits[0] 1# return digitsreturn[1][0]*len(digits)运行结果