/*
给一个数组nums和一个值val
移除所有数值等于val的元素
*/
#include<stdio.h>
int removeElement(int *nums, int numsSize, int val)
{
for(int i = 0; i < numsSize; )
{
if(nums[i] == val)
{
if(nums[numsSize -1] == val)
{
numsSize -= 1;
continue;
}
else
{
nums[i] = nums[--numsSize];
}
}
i++;
}
return numsSize;
}
int main()
{
int nums[] = {1,6,5,2,5,5};
int result = removeElement(nums, 6, 5);
printf("%d\n", result);
for(int i = 0; i < result; i++)
{
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
力扣刷题笔记(27)
最新推荐文章于 2024-09-28 08:45:00 发布