https://leetcode-cn.com/problems/remove-element/description/
我的解决方案:
class Solution {
public int removeElement(int[] nums, int val) {
if(nums.length==0)
return 0;
int cnt=0;
for(int i=0;i<nums.length;i++) {
if(nums[i]!=val) {
nums[cnt++]=nums[i];
}
}
return cnt;
}
}
提交记录中耗时最短的代码:
public class Solution {
public static int removeElement(int[] nums, int val) {
if(nums==null || nums.length==0)
return 0;
int len = 0, i=0,j=nums.length-1;
while(i<=j){
if(nums[i] != val){
i++;
len++;
}else{
nums[i] = nums[j];
j--;
}
}
return len;
}
public static void main(String[] args) {
int[] nums ={3,2,2,3};
removeElement(nums, 3);
for (int i : nums) {
System.out.println(i);
}
}
}