27. 移除元素

image.png
image.png

  1. //2n
  2. func removeElement(nums []int, val int) int {
  3. var l []int
  4. for _,v :=range nums{
  5. if val!=v{
  6. l = append(l,v)
  7. }
  8. }
  9. for i,v:=range l{
  10. nums[i]=v
  11. }
  12. return len(l)
  13. }

image.png

双指针

image.png

  1. func removeElement(nums []int, val int) int {
  2. var index = 0
  3. for _,v :=range nums{
  4. if val!=v{
  5. nums[index]= v
  6. index++
  7. }
  8. }
  9. return index
  10. }