题目:将一个val值从数组中移除,返回数组大小,数组内存放没有移除的数据。
#include <stdio.h>
int removeElement(int* nums, int numsSize, int val)
{
if( !nums )
{
return;
}
int i;
int j = 0;
for( i = 0 ; i < numsSize; i++ )
{
if( nums[i] != val )
{
nums[j++] = nums[i];
}
}
return j;
}
int main()
{
int nums[] = {3,4,6,2,2,3,2};
int i = 0;
int ret = removeElement(nums,sizeof(nums)/sizeof(int),2);
for( ; i < ret; i++ )
{
printf("%d ",nums[i]);
}
printf("\n");
}
3 4 6 3
sandbox> exited with status 0