![Python算法指南:程序员经典算法分析与实现](https://wfqqreader-1252317822.image.myqcloud.com/cover/208/31476208/b_31476208.jpg)
上QQ阅读APP看书,第一时间看更新
例48 矩阵元素ZigZag返回
1. 问题描述
给定一个m行、n列的矩阵,以ZigZag顺序返回矩阵的所有元素。以3行、3列的矩阵为例,黑圆点代表矩阵的元素,按照图1所示的顺序从左上角开始返回矩阵中的所有元素。
![](https://epubservercos.yuewen.com/2ECEAD/17035792804285206/epubprivate/OEBPS/Images/Figure-P104_4622.jpg?sign=1738906687-hyEU8x4F3U6oqRdR26Jx8Ju6czQnK4ox-0-19c854204760583659eaae7119d34e05)
图1 ZigZag顺序示意
2. 问题示例
给定一个矩阵:
[
[1,2,3,4],
[5,6,7,8],
[9,10,11,12]
]
返回[1,2,5,9,6,3,4,7,10,11,8,12]。
3. 代码实现
![](https://epubservercos.yuewen.com/2ECEAD/17035792804285206/epubprivate/OEBPS/Images/Figure-P104_4630.jpg?sign=1738906687-9N9MqytaVhYu4dXPUwbYba9VW5a9GV1G-0-b8b20498d7f0a0b53145df4ddd752c3d)
4. 运行结果
输入的矩阵为:[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
ZigZag顺序返回矩阵的所有元素是:[1,2,5,9,6,3,4,7,10,11,8,12]