题解 | #序列中整数去重#
序列中整数去重
https://www.nowcoder.com/practice/6564a2f6e70f4153ad1ffd58b2b28490
#include <stdio.h>
#include <stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);
int arr1[1000] = { 0 };//输入的数组
int arr2[1000] = { 0 };//输出的数组
int i = 0;
int j = 0;
int m = 0;
int count = 0;
for (i = 0; i < n; i++)
{
scanf("%d", &arr1[i]);//输入数值
}
for (i = n - 1; i >= 0; i--)//从后往前比较
{
int num = 0;
for (j = i - 1; j >= 0; j--)//用i-1坐标下的数和i坐标下的数比较
{
if (arr1[j] == arr1[i])//如果相等则直接跳过本轮i坐标下的比较
{
num = 1;
break;
}
}
if (num == 0)//不相等则存储在arr2数组内
{
count++;
arr2[m] = arr1[i];
m++;
}
}
for (m = count - 1; m >= 0; m--)//打印时从后往前打印,因为存储时是arr1从后往前存储的
{
printf("%d ", arr2[m]);
}
return 0;
}

查看9道真题和解析