int index = 1; for (int i = 1; i < numsSize; ++i) { if (nums[i] != nums[i - 1]) { nums[index++] = nums[i]; }这段C语言我看不懂,给我讲讲 为什么是删除后的,不应该是==吗,为什么要是!=
时间: 2023-06-04 10:05:37 浏览: 124
简单谈谈C语言中的= 和==、!=
这段 C 语言代码中,并没有删除任何元素,只是将值相同的元素保留了一个,因为在去重的时候,只需要保留一个即可。代码中的 if 语句判断当前元素与前一个元素是否相同,如果不同,就将当前元素的值赋给新的下标为 index 的位置,index 在代码中表示去重后的新数组的大小。代码中是使用 != 而不是 == 的原因是要找到不同的元素进行去重。
阅读全文