矩阵打印技巧:找到矩阵宏规律1,不要陷入细节,
zigzag打印矩阵
-
宏观的规律是什么 ?
其实比较宏观的规律是都是打印斜线,只是方向不同而已(这个问题很容易解决); -
如何实现宏观的规律?
使用A[ar,ac]表示右上的点
使用B[br,bc]表示左下的点 -
这两个点如何移动呢?
A点首先向右移动,直到无法向右移动时,向下移动
B点首先向下移动,直到无法向下移动时,向右移动;
打印斜线的函数
A的坐标位(ar,ac),B的坐标位B(br,bc),
flag控制打印方向:true,从右上到左下打印,false 从左下到右上的打印;
void printLevel(int[][] matrix, int ar, int ac, int br, int bc, boolean flag) {
// 右上到左下的打印
if (flag) {
while