码迷,mamicode.com
首页 > 其他好文 > 详细

26 Remove Duplicates from Sorted Array

时间:2019-01-12 00:29:27      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:解决   range   color   数列   直接   遍历数组   时间   style   开始   

def removeDuplicates(nums):
    leng = len(nums)
    k = 0
    #if leng ==0:
    #return False
    for x in range(1,leng) :
        print(k,x)
        print(nums)
        if nums[k] != nums[x]:
            k=k+1
            nums[k] = nums[x]
            
    print(k+1)

nums = [0,0,1,1,1,2,2,3,3,4]
removeDuplicates(nums)

非常好玩的双指针的题目,一开始的想法是转set然后直接len()调用一下解决,

时间复杂度度为O(1),且提供的是有序数列

k为慢指针,负责统计个数

x为快指针,负责遍历数组

在两者不同的时候,k前进一格,进入下一阶段,保证前k个是有序且不重复的

26 Remove Duplicates from Sorted Array

标签:解决   range   color   数列   直接   遍历数组   时间   style   开始   

原文地址:https://www.cnblogs.com/fan-2/p/10257729.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!