牛客网 在线编程 之字形矩阵打印

题目描述

对于一个矩阵,请设计一个算法,将元素按“之”字形打印。具体见样例。

给定一个整数矩阵mat,以及他的维数nxm,请返回一个数组,其中元素依次为打印的数字。

测试样例:

[[1,2,3],[4,5,6],[7,8,9],[10,11,12]],4,3
返回:[1,2,3,6,5,4,7,8,9,12,11,10]
import java.util.*;

public class Printer {
    public int[] printMatrix(int[][] mat, int n, int m) {
		int[] help = new int[n * m];
		for (int i = 0; i < n; i++) {
			if (i % 2 == 0) {
				for (int j = 0; j < m; j++) {
					help[i * m + j] = mat[i][j];
				}
			} else {
				for (int j = m - 1; j >= 0; j--) {
					help[i * m + (m - 1 - j)] = mat[i][j];
				}
			}
		}
		return help;
    }
}

最近刷题补基础,题目有些可能会很简单,循序渐进,做个记录。数学系的练coding

猜你喜欢

转载自blog.csdn.net/qq_32742009/article/details/81192985