在编程的世界里,有时候一个小小的挑战就能让我们学到很多新知识。今天,我们来聊聊LeetCode第66题——“加一”。题目很简单:给定一个非负整数数组,表示一个整数,你需要对这个整数加一,并返回结果的数组形式。听起来是不是很有趣?🤔
假设输入是 `[1, 2, 3]`,输出应该是 `[1, 2, 4]`。听上去好像很简单?但实际操作中需要注意进位问题哦!为了让大家更容易理解,这里用Python编写了一段优雅的代码:
```python
def plusOne(digits):
n = len(digits)
for i in range(n-1, -1, -1):
if digits[i] < 9:
digits[i] += 1
return digits
digits[i] = 0
return [1] + digits
```
这段代码的核心在于从数组末尾开始遍历,找到第一个不是9的位置直接加一,其余部分置零。如果全是9,则需要新增一位并补上1。这种方法既简洁又高效!💻
💡 小贴士:遇到类似问题时,可以尝试从后往前处理,这样能更轻松地应对进位情况。希望这篇分享对你有帮助!👏
Python LeetCode 算法练习