python 矩阵的对角线输出(列表实现)

您所在的位置:网站首页 python计算矩阵对角线长度 python 矩阵的对角线输出(列表实现)

python 矩阵的对角线输出(列表实现)

2023-12-20 11:43| 来源: 网络整理| 查看: 265

题目描述如下: 这个题目的要求差不多就是将矩阵按照对角线输出,不足的部分用0补齐,主要的难点就是对矩阵的对角线输出。

首先我们以3阶为例,为了清晰,下面将A[0][0]记为(0,0),那么最后的B矩阵就是[ [(0,0),0,0] , [(1,0),(0,1),0]] , [(2,0),(1,1),(0,2)] , [(2,1),(1,2),0] , [(2,2),0,0] ].我们把其中的非0项提出来看一下:

(0,0) (1,0),(0,1) (2,0),(1,1),(0,2) (2,1),(1,2) (2,2)

我们把上面的括号内左边记为i,右边记为j,即(i,j).先观察前三行(以三阶为例,m阶就是m行),每列开头的i依次由0增加到2(即m-1),而j保持0不变,同时观察每一行发现每行的i都从左往右依次-1直到i == 0,j从左往右依次+1一直到该行i的初始值(第一行0,第二行1,第三行2).同时当处理完开头为(2,0)的行后,需要将后续行的i固定为2(即m-1),则有了以下代码:

def func4(lst:list): lst_result = [] m = len(lst) start = 0 for j in range(m): for i in range(start,m): lst1 = [] i1,j1 = i,j while i1>=0 and j1


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3