题解 | #顺时针打印矩阵#
顺时针打印矩阵
https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a
package main /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @return int整型一维数组 */ func printMatrix(matrix [][]int) []int { // write code here // 每次把矩阵的第一行加入, // 然后删除第一行,逆时针旋转90度 var res = make([]int, 0) for len(matrix) > 0 { for i := 0; i < len(matrix[0]); i++ { res = append(res, matrix[0][i]) } matrix = matrix[1:] matrix = rotate(matrix) } return res } // 逆时针旋转90度 func rotate(matrix [][]int) [][]int { var res [][]int if len(matrix) == 0 { return res } for col := len(matrix[0])-1; col > -1; col-- { var arr []int for row := 0; row < len(matrix);row++ { arr = append(arr, matrix[row][col]) } res = append(res, arr) } return res }