选取合适的桶,题目上给定生成了N个1到1000之间的随机整数,所以可是设置一个a[1001]数组。
可以先进行去重,在对1001个元素进行排序。
去重代码
memset(a,0,sizeof(a)); //对a初始化 for(int i=0;i<n;i++) { cin>>t; //输入整数 if(a[t]==0) { a[t]=t; //存入不相等的整数 count++; //计算不相等整数的个数 } }
排序代码
sort(a,a+1001); //注意要排1001个元素(因为将随机输入的整数都进行排列)
输出代码
for(int i=0;i<1001;i++) { if(a[i]!=0) cout<<a[i]<<' '; }