给定一个大小为 n*m 的矩阵,请以对角线遍历并返回遍历结果
数据范围: ,矩阵中的元素满足
package main import _"fmt" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param mat int整型二维数组 * @return int整型一维数组 */ func diagonalOrder( mat [][]int ) []int { n,m:=len(mat),len(mat[0]) ans:=make([][]int,n+m-1) for i:=0;i<n;i++{ for j:=0;j<m;j++{ k:=i+j if ans[k]==nil{ ans[k]=[]int{} } if k%2!=0{ ans[k]=append(ans[k],mat[i][j]) }else{ ans[k]=append([]int{mat[i][j]},ans[k]...) } } } res:=[]int{} for _,arr:=range ans{ res=append(res,arr...) } return res }