不借助第三方内存,O(1)
int DelValNums(int *arr, int len, int val)
{
if(len == 0) return 0;
int i = 0;
for(int j=0; j < len; ++j)
{
if(arr[j] != val)
{
arr[i] = arr[j];
i++;
}
}
return i;
}
int main()
{
int arr[] = {0,0,1,1,2,3,4,4};
int len = DelValNums(arr, 8, 3);
for(int i=0; i <len; ++i)
{
printf("%d ", arr[i]);
}
return 0;
}