9.leetcode70-climbing stairs

---恢复内容开始---

1.题目描述

Given a sorted array, remove the duplicates in-placesuch that each element appear only once and return the new length.

Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.
给出一串数字,返回出去重复元素后的序列长度
2.题目分析
比较相邻数字,出现相同数字原列表长度减一
3.解题思路
 1 class Solution(object):
 2     def removeDuplicates(self, nums):
 3         """
 4         :type nums: List[int]
 5         :rtype: int
 6         """
 7         len_nums=len(nums)
 8         i=0
 9         if len_nums==0: #排除空列表
10             return None
11         if len_nums==1: #考虑列表长度为一的情况
12             return 1
13         while i<len(nums)-1: 
14             if nums[i]==nums[i+1]: #检查相邻元素是否相同
15                 len_nums-=1 
16             i+=1
17         return len_nums

 

---恢复内容结束---

posted @ 2018-02-05 21:45  vlice  阅读(90)  评论(0编辑  收藏  举报