随机一个数组,要求没有重复的升序的输出到控制台,最简单代码

本文介绍了一种利用TreeSet数据结构实现数组中数字排序及去除重复元素的方法。通过创建一个包含100个随机整数的数组,并利用TreeSet自动排序和去重的功能,最终输出了一个不含重复且按升序排列的数字集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要采用TreeSet里的自动去重和排序

 

/**
 * 有一个数组有一百个数字,请输出没有重复的并且按照升序排序
 * @author 小心能出枚
 *
 */
class Test2{
    public void sortArr() {
        Random random = new Random();//创建随机数对象
        int[] arr = new int[100];//创建一个int类型的数组
        TreeSet<Integer> set = new TreeSet<>();//建立TreeSet对象,TreeSet添加时会自动排序和去重
        for(int i=0;i<arr.length;i++) {
            arr[i]  = random.nextInt(100);//初始化数组接收一百个0~100的随机数
            set.add(arr[i]);
        }
    System.out.println(set);    
    }
}

### 回答1: 以下是使用JavaScript编写的一个随机数生成程序,可以生成指定范围内的随机整数: ```javascript function generateRandomNumber(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } ``` 这个函数使用了JavaScript内置的`Math.random()`方法生成一个0到1之间的随机数,然后将其乘以指定范围的大小,并向下取整得到一个整数。最终结果将在指定的范围内,包括最小值和最大值。如果您需要生成其他类型的随机数,比如随机浮点数或字符串,可以对这个函数进行相应的修改。 ### 回答2: 冒泡排序是一种简单的排序算法,通过比较相邻元素的大小,将较大(或较小)的元素逐步交换至序列一端,从而实现排序的目的。下面是用JavaScript语言编写的冒泡排序程序: ```javascript function bubbleSort(arr) { var len = arr.length; for (var i = 0; i < len - 1; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j + 1]) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return arr; } var arr = [5, 3, 8, 4, 2]; console.log("排序前:" + arr); console.log("排序后:" + bubbleSort(arr)); ``` 上述代码首先定义了一个`bubbleSort`函数,该函数接收一个待排序的数组作为参数。在函数内部,使用两个嵌套的循环进行迭代,外层循环用于控制比较的轮数,内层循环用于两两比较相邻元素并进行交换。如果前一个元素大于后一个元素,就进行交换操作。每完成一轮比较,最大的元素就会通过交换被移动到最后的位置。内层循环每进行一轮,就会使得未排序的元素中最大的元素移动到正确的位置上。最后,返回排序后的数组。 程序的最后部分是对上述函数的调用,通过传入待排序的数组,并用`console.log`方法打印出排序前和排序后的数组。运行上述代码,可以得到输出结果为: ``` 排序前:5, 3, 8, 4, 2 排序后:2, 3, 4, 5, 8 ``` 即按照升序排列的结果。这就是用JavaScript写的一个冒泡排序程序。 ### 回答3: 冒泡排序是一种简单但较慢的排序算法,它重复地遍历待排序的列表,一次比较两个元素,并按照大小交换它们的位置,直到整个列表排序完成为止。下面是用JavaScript编写的冒泡排序程序: ``` function bubbleSort(arr) { var len = arr.length; for (var i = 0; i < len - 1; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j + 1]) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return arr; } // 示例 var arr = [5, 3, 8, 4, 2]; console.log("排序前:" + arr); console.log("排序后:" + bubbleSort(arr)); ``` 以上代码首先定义了一个`bubbleSort`函数,接受一个数组作为参数。在函数内部,通过两个嵌套的循环来实现冒泡排序的逻辑。外层循环控制比较的趟数,内层循环则进行两个元素的比较和交换。如果前一个元素大于后一个元素,就交换它们的位置。在每一趟比较完成后,最大的元素会被移动到数组的末尾。最终,经过多轮的比较和交换,整个数组将会被排序。 最后,通过创建一个示例数组并调用`bubbleSort`函数,我们可以在控制台输出排序前和排序后的结果来验证代码的正确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值