LeetCode初级算法-数组-1

题目:从排序数组中删除重复项
在这里插入图片描述
C语言解题

int removeDuplicates(int* nums, int numsSize) {
	if (numsSize == 0) {
		return 0;
	}
	int length = 1;
	for (int i = 0; i < numsSize; i++) {
		if (nums[i] != nums[length - 1]) {
			nums[length++] = nums[i];
		}
	}
	return length;
}

使用length变量,既代表新数组长度,也指向当前处理到的保留的数组位置。新数组长度至少为1。
用i遍历数组,如果i指向的数字与length指向的数字不同,则将i指向的数字扩充到新数组中。

猜你喜欢

转载自blog.csdn.net/qq_34667960/article/details/86688377