得到一个不重复随机数组的方法

在做双色球案例时发现的一个方法,虽然时间复杂度为n,但是对于没有学习hashmap的同学来说,也可以根据此方法得到一个不含重复元素的随机数组。
大致思路就是:

int[] priceRedBall = new int[6];
Random random = new Random();
while(true) {
			for(int i=0;i<priceRedBall.length;i++) {
				priceRedBall[i] = random.nextInt(33)+1;//1~33的数
			}//光用此方法数组元素可能会重复
			boolean flag = true;
			Loop://这两层循环检测数组元素是否重复,重复就继续while循环摇随机数
			for(int i=0;i<priceRedBall.length-1;i++) {
				for(int j=i+1;j<priceRedBall.length;j++) {
					if(priceRedBall[i] == priceRedBall[j]) {//数组中的第i个元素其后所有元素比较
						flag = false;
						break Loop;
					}
				}
			}
			if(flag == true) {//数组无重复,即可跳出while循环
				break;
			}
		}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Python内置的random模块来创建一个长度为10的随机数组,并使用sort()方法数组进行排序。具体代码如下: ```python import random # 创建长度为10的随机数组 arr = [random.randint(1, 100) for i in range(10)] # 对数组进行排序 arr.sort() print(arr) ``` 运行结果可能如下: ``` [3, 14, 23, 27, 34, 42, 45, 63, 80, 91] ``` 其中,random.randint(1, 100)表示生成1到100之间的随机整数,range(10)表示生成长度为10的序列,用列表推导式将随机整数添加到数组中。sort()方法可以对数组进行排序。 ### 回答2: Python创建一个长度为10的随机数组并排序的实现可以通过使用Python内置的random模块和sorted函数完成。 具体实现步骤如下: (1)首先,需要导入Python内置的random模块,以便可以使用random模块中的函数生成随机数。 (2)接着,利用random模块生成一个长度为10的随机数列表,可以使用random.sample(range(100), 10)函数,该函数的作用是在0~99之间随机生成10个不重复的整数作为列表元素。 (3)将生成的随机数列表传入sorted函数中进行排序,得到一个升序排序的列表。 (4)最后,将排序后的列表打印输出即可。 完整代码实现如下: import random # 随机生成一个长度为10的随机数列表 num_list = random.sample(range(100), 10) # 对随机数列表进行升序排序 sorted_list = sorted(num_list) # 打印排序后的列表 print(sorted_list) 运行以上代码,即可得到一个长度为10的升序排序的随机数列表。 Python中实现随机数生成和列表排序并不复杂,熟练掌握Python内置函数的使用可以使代码实现起来更为简单。 ### 回答3: Python 是一种非常高效的语言,它提供了很多实用的模块和方法,让我们可以很轻松地处理各种数据类型,其中包括数组。创建一个长度为10的随机数组并排序也非常容易,下面我们来看一下具体的实现。 首先,我们需要导入 Python 的 random 模块用于生成随机数,代码如下: ```python import random ``` 接下来,我们可以使用 random 模块的 randint() 方法来生成长度为10的随机数组,代码如下: ```python random_list = [random.randint(0, 100) for i in range(10)] ``` 上面这行代码的作用是生成一个长度为10的随机数组,其中每个元素的取值范围是 0 - 100。 最后,我们可以使用 Python 自带的排序函数 sorted() 将随机数组排序,代码如下: ```python sorted_list = sorted(random_list) ``` 上面这行代码的作用是将随机数组按升序排序,存储在 sorted_list 中。 完整的代码如下: ```python import random random_list = [random.randint(0, 100) for i in range(10)] sorted_list = sorted(random_list) print("随机数组为:", random_list) print("排序后的数组为:", sorted_list) ``` 运行结果如下: ``` 随机数组为: [46, 41, 91, 3, 98, 9, 36, 63, 95, 50] 排序后的数组为: [3, 9, 36, 41, 46, 50, 63, 91, 95, 98] ``` 可以看到,程序成功生成了长度为10的随机数组,并将它排序后输出。这就是使用 Python 创建长度为10的随机数组并排序的方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值