跳到主要内容

27-移除元素

题目描述

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。

解法和 26 题一样,双指针

/*
* @lc app=leetcode.cn id=27 lang=golang
*
* [27] 移除元素
*/

// @lc code=start
func removeElement(nums []int, val int) int {
// 双指针
i, j := 0, 0
for j < len(nums) {
if nums[j] != val {
nums[i] = nums[j]
i++
}
j++
}
return i
}

// @lc code=end