1 条题解
-
0
NUMPY013 题解:随机数组最值
题目
给定一个整数 ,创建一个 的随机数组,找出其中的最小值和最大值(使用种子 确保可复现)。
解题思路
- 读取整数
- 使用
np.random.seed(42)设置随机种子 - 使用
np.random.random()创建随机数组 - 使用
.min()和.max()获取最值
代码
import numpy as np n = int(input()) np.random.seed(42) Z = np.random.random((n, n)) print(Z.min()) print(Z.max())代码详解
1. 设置随机种子
np.random.seed(42)- 设置种子为 42,确保每次运行结果相同
- 不同种子会产生不同的随机数序列
2. 创建随机数组
Z = np.random.random((n, n))- 生成形状为 的二维随机数组
- 随机数范围:[0, 1)
3. 获取最值
Z.min() # 最小值 Z.max() # 最大值运行示例
输入:
10输出:
0.005522117123602399 0.9868869366005173随机种子的作用
为什么需要种子?
# 没有种子:每次结果不同 Z = np.random.random((3, 3)) # 第1次:[0.12, 0.56, ...] # 第2次:[0.89, 0.34, ...] # 有种子:每次结果相同 np.random.seed(42) Z = np.random.random((3, 3)) # 第1次:[0.37, 0.95, ...] # 第2次:[0.37, 0.95, ...]常见种子值
0,42,123—— 常用种子值np.random.seed()不带参数 —— 使用系统时间
其他获取最值的方法
# 方法1:NumPy 函数 np.min(Z) np.max(Z) # 方法2:数组方法 Z.min() Z.max() # 方法3:沿轴操作 Z.min(axis=0) # 每列最小值 Z.min(axis=1) # 每行最小值核心知识点
np.random.seed()—— 设置随机种子np.random.random()—— 生成随机数组.min()/.max()—— 获取最值- 种子用于保证结果可复现
- 1
信息
- ID
- 443
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 1
- 已通过
- 1
- 上传者