LEETCODE 498. 对角线遍历
Posted hunter01
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LEETCODE 498. 对角线遍历相关的知识,希望对你有一定的参考价值。
https://leetcode-cn.com/problems/diagonal-traverse/
vector<int> nums;
int m = matrix.size();
int n = matrix[0].size();
int i = 0;
while (i < m + n)
{
int x1 = (i < m) ? i : m - 1;
int y1 = i - x1;
while (x1 >= 0 && y1 < n)
{
nums.push_back(matrix[x1][y1]);
x1--;
y1++;
}
i++;
if (i >= m + n) break;
int y2 = (i < n) ? i : n - 1;
int x2 = i - y2;
while (y2 >= 0 && x2 < m)
{
nums.push_back(matrix[x2][y2]);
x2++;
y2--;
}
i++;
}
return nums;
以上是关于LEETCODE 498. 对角线遍历的主要内容,如果未能解决你的问题,请参考以下文章