题目:力扣
思路:
此处关键在于要清楚数据的结构。
数组 - 存储在连续的内存空间,且相同类型数据的集合,可通过下标索引的方式获取对应的数据。
注意:数组下标都是从0开始。
数组的内存空间地址 连续!连续!连续!
所以既然内存空间连续,那么移除数组元素肯定是没办法移除的,那么要采取什么样的方式?
答案:覆盖。
代码:
class Solution {
public int removeElement(int[] nums, int val) {
int slow = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] != val) {
nums[slow] = nums[i];
slow++;
}
}
return slow;
}
}