📅  最后修改于: 2023-12-03 15:06:36.342000             🧑  作者: Mango
对角线是从矩阵的左上方到右下方的连线,包括沿着这条线的元素。在一个 N×N 的矩阵中找到这条线上的最小和最大元素。
处理一个矩阵的对角线元素很简单,我们只需要访问矩阵 M[i][i] 中的每一个元素就可以了。因此,我们可以使用一个循环来遍历对角线并找到最小和最大元素。
def min_max_diagonal_elements(matrix: List[List[int]]) -> Tuple[int, int]:
"""
Find the minimum and maximum elements in the diagonal of a square matrix.
Args:
matrix: A square matrix represented by a list of lists of integers.
Returns:
A tuple of two integers: the minimum and maximum elements in the diagonal of the matrix.
"""
n = len(matrix)
min_element = matrix[0][0]
max_element = matrix[0][0]
for i in range(n):
if matrix[i][i] < min_element:
min_element = matrix[i][i]
if matrix[i][i] > max_element:
max_element = matrix[i][i]
return min_element, max_element
matrix = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
min_element, max_element = min_max_diagonal_elements(matrix)
print("Minimum element:", min_element)
print("Maximum element:", max_element)
Minimum element: 1
Maximum element: 9
以上是一个简单的 Python 代码示例。需要注意的是,输入矩阵必须是一个方矩阵,即行数和列数相等。否则会抛出 IndexError 异常。
希望这个文章能够帮助你更好地理解如何处理矩阵的对角线元素,以及如何在 Python 中实现这个功能。