从输入的数组里随机抽取多个数字,且每个数字最多只能用一次
时间: 2023-05-26 15:04:51 浏览: 128
可以使用洗牌算法,将数组打乱,然后取前几个数字即为所需的随机抽取结果。
具体步骤如下:
1. 将数组的所有元素放入一个集合中。
2. 创建一个空数组来存储随机抽取的数字。
3. 从集合中随机选择一个元素,将其添加到数组中。
4. 从集合中移除该元素。
5. 重复第3步和第4步,直到抽取足够数量的数字或者集合为空。
6. 返回数组作为结果。
代码实现如下:
```python
import random
def random_select(nums, k):
random.shuffle(nums)
return nums[:k]
# 测试
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(random_select(nums, 3))
```
输出结果可能为:[9, 3, 6]
阅读全文