Plus One

    这道题为简单题

  题目:

    

 

  思路:

    我的思路:用变量jin代表需要进位,倒序遍历列表,如果该元素加1等于10,那么该元素变为0,jin=1,如果遍历到最后一个元素等于10,那么还需要在列表索引0插入元素1,否则如果该元素加上jin不等于10,那么直接在该元素上加上1即可,jin=0

    大神:遍历列表,把列表对应元素转化为对应num,再用num+1,然后再用列表生成器返回列表

  代码:

    我的代码:

 1 class Solution(object):
 2     def plusOne(self, digits):
 3         """
 4         :type digits: List[int]
 5         :rtype: List[int]
 6         """
 7         jin = 1
 8         for i in range(len(digits)-1,-1,-1):
 9             if digits[i] + jin == 10:
10                 digits[i] = 0
11                 jin = 1
12                 if i == 0:
13                     digits.insert(0, 1)
14                     return digits
15             else:
16                 if jin == 1: digits[i] += 1
17                 jin = 0
18                 return digits

 

     大神:

1 def plusOne(digits):
2     num = 0
3     for i in range(len(digits)):
4         num += digits[i] * pow(10, (len(digits)-1-i))
5     return [int(i) for i in str(num+1)]

 

posted @ 2017-09-21 23:24  唐僧洗发爱飘柔  阅读(132)  评论(0)    收藏  举报