1、题目目的:去重+排序
2、有3种算法:
(1)先取出每个数字(重复的不要),再排序(冒泡排序)
for(int j = 0; j < n; j++) //冒泡排序 { for(int i = 0; i < n-j-1; i++) { if(arr[i] > arr[i+1]) { int t = arr[i]; arr[i] = arr[i+1]; arr[i+1] = t; } } }
(2)先排序,再去掉与前一个数重复的数
(3)用另外一个长度为1000的全0数组作为标记数组,出现过的数在标记数组中对应位置记为1,输出标记数组中为1的数。
int b[1000]={0}; for(int i=0;i<n;i++) { b[arr[i]]=1; } for(int i=1;i<=1000;i++) { if(b[i]==1) { cout<<i<<" "; } }