Java编程练习

Java编程—去重与排序(Java)

题目:

【问题描述】明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。Input Param n 输入随机数的个数 inputArray n 个随机整数组成的数组 Return Value OutputArray 输出处理后的随机整数

【输入形式】输入多行,先输入随机整数的个数n,再输入相应个数的整数

【输出形式】输出一行,处理后的结果

【样例输入】 11

10 20 40 32 67 40 20 89 300 400 15

【样例输出】

10 15 20 32 40 67 89 300 400

代码样例:

import java.util.Scanner;
import java.util.Set;
import java.util.HashSet;
import java.util.ArrayList;
import java.util.List;
import java.util.Collections;
import java.util.Comparator;

public class duplication_sorting {
    public static void main(String[] args) {
        Scanner scan=new Scanner(System.in);
        int n=scan.nextInt();
        Set<Integer> set = new HashSet<Integer>();//使用hashset进行去重操作
        for(int i=0;i<n;i++){
            set.add(scan.nextInt());
        }
        ArrayList<Integer> list = new ArrayList<Integer>();
        list.addAll(set);//把set中的所有元素添加到list中竹本进行排序;
        Collections.sort(list); //使用collections。sort()函数进行排序;
        //int [] a=new int[list.size()];
        for(int i=0;i<list.size();i++){
        //    a[i]=list.get(i);
        System.out.print(list.get(i)+" ");//因为直接输出list结果为[a,b,c,d],未达到输出要求,所以使用get()进行输出
        }
    }
}

运行样例结果:

在这里插入图片描述

list和set的用法(附上链接):
Java中List和Set集合的使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值