//之字形打印矩阵
public class ZhiPrintMatrix{
//之字形打印矩阵
public static void PrintMatrixZigZag(int[][]matrix)
{
//定义两个移动方向
int tr=0;
int tc=0;
int dr=0;
int dc=0;
int endr=matrix.length-1;
int endc=matrix[0].length-1;
boolean isUp=false;
while(tr!=endr+1)
{
PrintItalicMatrix(matrix,tr,tc,dr,dc,isUp);
tr=tc==endc?tr+1:tr;
tc=tc==endc?tc:tc+1;
dc=dr==endr?dc+1:dc;
dr=dr==endr?dr:dr+1;
isUp=!isUp;
}
System.out.println();
}
//斜着打印一行的数据
public static void PrintItalicMatrix(int[][]m,int tr,int tc,int dr,int dc,boolean b)
{
if(b)
{
while(tr!=dr+1)
{
System.out.print(m[tr++][tc--]+" ");
}
}else{
while(dr!=tr-1)
{
System.out.print(m[dr--][dc++]+" ");
}
}
}
public static void main(String[]args)
{
//System.out.println("Hello world!");
int[][]matrix={
{1,2,3,4},
{5,6,7,8},
{9,10,11,12}
};
PrintMatrixZigZag(matrix);
}
}
之字形打印矩阵
最新推荐文章于 2022-09-29 10:00:56 发布