27.Remove Element

27.Remove Element

总结:遍历并<u>原地</u>修改列表。(边迭代边pop会影响列表索引)

解法:

1.快慢双指针法—都从起始端遍历。O(n),O(1)

描述 快指针负责遍历数组,将符合条件的元素与慢指针对应的元素交换或者覆盖,快慢指针都递增,<u>快指针一直移动,只有符合条件,慢指针才移动</u>

例子

i=0
for j in range(len(nums)):
    if(nums[j]!=val):
        nums[i]=nums[j]
        i+=1

return i

2.快慢双指针法—从两端遍历。O(n),O(1)

描述 起始段快指针负责遍历,将符合条件的元素与末端慢指针交换,快慢指针都向中间移动,<u>只要符合条件慢指针就移动,不符合条件快指针才移动,</u>当快指针等于慢指针时停止

例子

n=len(nums)
i=0
while(i<n):
    if(nums[i]==val):
        nums[i],nums[n-1]=nums[n-1],nums[i]
        n=n-1
    else:
        i=i+1
return n
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 时间:2017-10-10 09:14 地点:碧水家中 内容:藏与相? 2017-9-30至今天,整整10天。我忽...
    李静媛嘛嘛阅读 132评论 0 0
  • 讲真,生日这个词好像远离我好久了。 也不知从何时起,过生日变得不再那么重要,甚至不再那么欣喜,或许是年复一年的生日...
    云空未必空阅读 256评论 0 0
  • 猴枣为少常用中药,历代本草未见收载。《本草纲目》载有“鮓答”,系指牛马诸畜肠胃肝胆间所生的结石,但未提及猴枣。 别...
    沉迷宝宝阅读 844评论 0 0
  • 2018.3.26#每日一问# 经过前面两周的练习,相信你对标题和框架的写作已经有了一些初步的体会,希望你已经建立...
    阳光小青阅读 144评论 0 1
  • 升级了nginx新版本,好像对 document_root 设置的文件夹如果是软链,有些变化了。假设 docume...
    龙权阅读 2,109评论 1 0