LeetCode–对角线遍历
题目:
给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示
示例
输入:
[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
输出: [1,2,4,7,5,3,6,8,9]
思路
- 判断矩阵是否为空 为空,则返回空数组
- 创建一个长度为row*col的数组
- 将矩阵中对应坐标的数字填充入数组
- 判断层数的奇和偶 奇数层像下走r++,c-- 偶数层向上走r–,c++
本文按照如图所示的矩阵进行分析:
//1.判断矩阵是否为空 为空,则返回空数组
if(matrix == null || matrix.length == 0){
return new int[]{};
}
int r = 0, c = 0;
int row