HJ3.明明的随机数 C语言 双指针法
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
#include <stdio.h>
#include <stdlib.h>
int cmp(const void* a, const void* b) {
return *(int*) a - *(int*) b;
}
int removeDuplicates(int* nums, int numsSize) {
if (numsSize == 0) return 0;
int slow = 0;
for (int fast = 1; fast < numsSize; fast++) {
if (nums[fast] != nums[slow]) {
nums[++slow] = nums[fast];
}
}
return slow + 1;
}
int main() {
int N;
scanf("%d", &N);
int i;
int nums[N];
for (i = 0; i < N; i++) {
scanf("%d", &nums[i]);
}
qsort(nums, N, sizeof(int), cmp);
int len = removeDuplicates(nums, N);
for (i = 0; i < len; i++) {
printf("%d\n", nums[i]);
}
return 0;
}
