Skip to content

Commit e6ead61

Browse files
Add files via upload
1 parent 83f18eb commit e6ead61

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

Plus One/Plus_One.py

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# 第一种思路,简单粗暴
2+
# 36ms 99.84%
3+
class Solution:
4+
def plusOne(self, digits):
5+
"""
6+
:type digits: List[int]
7+
:rtype: List[int]
8+
"""
9+
num = 1
10+
len_digits = len(digits)
11+
for index, digit in enumerate(digits):
12+
num += digit * 10 ** (len_digits - index - 1)
13+
14+
return list(map(int, list(str(num))))
15+
16+
# 第二种思路,使用进位制
17+
# 36ms 99.84%
18+
class Solution:
19+
def plusOne(self, digits):
20+
"""
21+
:type digits: List[int]
22+
:rtype: List[int]
23+
"""
24+
for index in range(len(digits) - 1, -1, -1):
25+
if index is len(digits) - 1:
26+
digits[index] += 1
27+
else:
28+
digits[index] += carry
29+
30+
if digits[index] >= 10:
31+
carry = digits[index] // 10
32+
digits[index] %= 10
33+
else:
34+
carry = 0
35+
if carry is not 0:
36+
digits.insert(0, carry)
37+
return digits

0 commit comments

Comments
 (0)