用randint随机生成500个1至100的整数并找出其中的众数
时间: 2024-05-12 07:20:00 浏览: 7
以下是Python代码实现:
```python
import random
from collections import Counter
# 生成500个1至100的随机整数
nums = [random.randint(1, 100) for _ in range(500)]
# 使用Counter函数统计每个数出现的次数
counter = Counter(nums)
# 找出出现次数最多的数(众数)
mode = counter.most_common(1)[0][0]
print("众数为:", mode)
```
输出结果类似于:
```
众数为: 50
```
相关问题
随机生成十个100以内的整数,并统计出其中偶数和奇数的个数
好的,我可以帮你写一个Python程序来实现这个功能。代码如下:
```python
import random
# 生成随机数列表
nums = [random.randint(0, 100) for _ in range(10)]
# 统计偶数和奇数的个数
even_count = 0
odd_count = 0
for num in nums:
if num % 2 == 0:
even_count += 1
else:
odd_count += 1
# 输出结果
print("随机生成的数为:", nums)
print("偶数的个数为:", even_count)
print("奇数的个数为:", odd_count)
```
程序中首先使用了Python内置的random模块生成了一个包含10个随机数的列表,然后使用循环遍历列表,统计其中偶数和奇数的个数。最后输出统计结果。
你可以直接复制上述代码到Python环境中执行,或者将代码保存到一个`.py`文件中并运行。
python随机生成10个整数并找出第k小元素
可以使用Python内置的random模块来生成随机数,然后使用快速选择算法(QuickSelect)来找出第k小元素。
以下是示例代码:
```python
import random
def quickselect(nums, k):
if len(nums) == 1:
return nums[0]
pivot = random.choice(nums)
lows = [n for n in nums if n < pivot]
highs = [n for n in nums if n > pivot]
pivots = [n for n in nums if n == pivot]
if k < len(lows):
return quickselect(lows, k)
elif k < len(lows) + len(pivots):
return pivots[0]
else:
return quickselect(highs, k - len(lows) - len(pivots))
# 生成10个随机整数
nums = [random.randint(0, 100) for _ in range(10)]
print("生成的随机整数为:", nums)
# 找出第k小元素
k = 3
kth_smallest = quickselect(nums, k-1)
print("第{}小元素为:{}".format(k, kth_smallest))
```
在上面的代码中,我们首先使用random模块生成了10个随机整数,然后使用quickselect函数找出第k小元素。在该函数中,我们首先随机选择一个数作为枢轴(pivot),然后将数组分成三个部分:小于枢轴的数、等于枢轴的数、大于枢轴的数。如果k小于小于枢轴的数的长度,那么我们递归地在小于枢轴的数中继续寻找第k小元素;如果k小于小于枢轴的数和等于枢轴的数的长度之和,那么枢轴就是第k小元素;否则,在大于枢轴的数中继续寻找第k - (小于枢轴的数的长度 + 等于枢轴的数的长度)小元素。