建设网站的价值,成交型网站建设公司,很好用的炫酷WordPress主题,网站和网络建设调研情况FZ12 牛牛的顺时针遍历 文章目录 FZ12 牛牛的顺时针遍历题目描述题解思路题解代码 题目描述 题解思路
通过一个变量来记录当前方向#xff0c;遍历矩阵#xff0c;每次遍历一条边#xff0c;将该边的信息加入到结果中
题解代码
func spiralOrder(matrix [][]int) []int {…FZ12 牛牛的顺时针遍历 文章目录 FZ12 牛牛的顺时针遍历题目描述题解思路题解代码 题目描述 题解思路
通过一个变量来记录当前方向遍历矩阵每次遍历一条边将该边的信息加入到结果中
题解代码
func spiralOrder(matrix [][]int) []int {// write code herem, n : len(matrix), len(matrix[0])final : m * nres : make([]int, 0, final)// 0 // 1 v// 2 // 3 ^var direct intfor i : 0; i final; {switch direct {case 0:i len(matrix[0])res append(res, matrix[0]...)matrix matrix[1:]direct 1case 1:h : len(matrix)i hv : len(matrix[0]) - 1for j : 0; j h; j {res append(res, matrix[j][v])matrix[j] matrix[j][:v]}direct 2case 2:v : len(matrix[0])i vh : len(matrix) - 1for j : v - 1; j 0; j-- {res append(res, matrix[h][j])}matrix matrix[:h]direct 3case 3:h : len(matrix)i hfor j : h - 1; j 0; j-- {res append(res, matrix[j][0])matrix[j] matrix[j][1:]}direct 0}}return res
}