概述
给出一个整数数组,并给出一个目标元素。从数组中移除该目标元素的所有出现。移除工作必须在原地进行
Input: [1, 4, 2, 5, 4]
Target: 4
Output: [1, 2, 5]
Input: [1, 2, 3]
Target:3
Output: [1, 2]
程序
以下是相同的程序。
package main
import (
"fmt"
)
func removeElement(nums []int, val int) []int {
lenNums := len(nums)
k := 0
for i := 0; i < lenNums; {
if nums[i] != val {
nums[k] = nums[i]
k++
}
i++
}
return nums[0:k]
}
func main() {
output := removeElement([]int{1, 4, 2, 5, 4}, 4)
fmt.Println(output)
output = removeElement([]int{1, 2, 3}, 3)
fmt.Println(output)
}
输出
[1 2 5]
[1 2]