对角线的输出
“”"
设计:Python程序设计
作者:初学者
日期:2022年 09月 25日
“”"
class Solution:
# 参数matrix为矩阵
# 返回整数列表
def find_diagonal_order(self, matrix):
import collections
result = []
dd = collections.defaultdict(list)
if not matrix:
return result
for i in range(0, len(matrix)):
for j in range(0, len(matrix[0])):
dd[i + j + 1].append(matrix[i][j])
for k, v in dd.items():
if k % 2 == 1: dd[k].reverse()
result += dd[k]
return result
主函数
if name == ‘main’:
m = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
s = Solution()
print(“输入为:”, m)
print(“输出为:”, s.find_diagonal_order(m))