python - 如何调用矩阵中的数字
问题描述
这是我的矩阵设置:
for a in b:
size_x = len(a) + 1
size_y = len(b) + 1
matrix = np.zeros ((size_x, size_y))
for x in range(size_x):
matrix [x, 0] = x
for y in range(size_y):
matrix [0, y] = y
for x in range(1, size_x):
for y in range(1, size_y):
if a[x-1] == b[y-1]:
matrix [x,y] = min(
matrix[x-1, y] + 1,
matrix[x-1, y-1],
matrix[x, y-1] + 1
)
else:
matrix [x,y] = min(
matrix[x-1,y] + 1,
matrix[x-1,y-1] + 1,
matrix[x,y-1] + 1
)
print(matrix)
这将给出输出,例如
t e s t
[[ 0. 1. 2. 3. 4.]
t [ 1. 0. 1. 2. 3.]
e [ 2. 1. 0. 1. 2.]
x [ 3. 2. 1. 1. 2.]
t [ 4. 3. 2. 1. 1.]]
其中右下角是最终值。我如何将其取出并将其添加到列表中?
解决方案
您可以使用以下表达式访问数组arr的第i个索引: arr[i]。为了回答您的问题-> 访问二维矩阵的右下角值,只需使用,
matrix[matrix.length-1][matrix[matrix.length-1].length-1]
或更好
lastRowIndex = matrix.length-1;
lastColIndex = matrix[lastRowIndex].length-1;
bottomRightValue = matrix[lastRowIndex][lastColIndex]
推荐阅读
- android-studio - 在项目目录中找不到“Podfile”
- terraform - terraform 计划错误:不支持的参数:此处不应使用名为“point_in_time_recovery_enabled”的参数
- r - 将绘图从 plotly 导出为 PDF
- azure - 无法将 ping 请求从一台虚拟机发送到另一台位于不同子网但位于同一虚拟网络中的虚拟机
- android - 是否可以返回 Flow
- > 插入房间后?
- vue.js - 如何允许从浏览器直接访问 chrome 扩展上 SPA 中包含的“页面”?
- ios - ios 14 PHPhotoLibrary.requestAuthorization 不调用处理程序
- python - 熊猫串联导致NaN?
- amazon-web-services - 为什么 Amazon SNS 会向我的弹性 beanstalk 服务器发送垃圾邮件?
- android - Jetpack Compose:使用 TextField 修改 Room 数据类