题解 | #去重排序一次搞定#

KiKi去重整数并排序

http://www.nowcoder.com/practice/f59b914172b94c69a2b29ad0a1d9b1a7

这里我把去重、排序、输出和在一个循环里面写了,我觉得排序先写可能会好一点,所以就先进行排序判断,然后再判断是否相同,如果相同就把后者变为0,最后在外层循环判断是否为0,如不为0则输出

int main()
{
    int n,arr[1000]={0},temp;
    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d",&arr[i]);
    }
    for(int i=0;i<n;i++){
        for(int j=i+1;j<n;j++){
            if(arr[i]>arr[j])//进行排序
            {
                temp=arr[j];
                arr[j]=arr[i];
                arr[i]=temp;
            }
            else if(arr[i]==arr[j]){//判断两数是否相等
                arr[j]=0;//如果相等则后者变0
            }
        }
        if(arr[i]!=0)//这时候第一次去重和排序已经完成,可以直接判断并输出
            printf("%d ",arr[i]);
    }
}
全部评论

相关推荐

09-08 20:19
门头沟学院 Java
如标题所见,想问一下27届大三想找实习9月份到10月份的机会多嘛?害怕错过最好的时机,鼠鼠也想占一个实习的好坑位
牛客20646354...:第一份实习还是看运气吧,我当时第一段实习靠点评和外卖找了好久才找到的。有了第一段后面就好找一些了,万事开头难
不给转正的实习,你还去吗
点赞 评论 收藏
分享
头像
09-01 09:00
已编辑
四川旅游学院 运营
牛客55195891...:主要是专业不好,别的没毛病
牛客解忧铺
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务