题解 | #螺旋矩阵#

螺旋矩阵

http://www.nowcoder.com/practice/7edf70f2d29c4b599693dc3aaeea1d31

递归,读完一行,将该行删去,将矩阵左旋90度。重复操作。

import java.util.ArrayList;
public class Solution {
    public ArrayList<Integer> spiralOrder(int[][] matrix) {
     ArrayList<Integer> list = new ArrayList<Integer>();
     if(matrix.length==0)
         return list;
     luoxuan(matrix,list);
     return list;
    }
    //矩阵左旋
    public int[][] reverseMatrix(int[][] matrix){
        int[][] newarr = new int[matrix[0].length][matrix.length];
        for(int i = 0;i<matrix.length;i++){
            for(int j = 0;j<matrix[i].length;j++){
                newarr[matrix[i].length-1-j][i] = matrix[i][j];
            }
        }
        return newarr;
    }
    public void luoxuan(int[][] matrix ,ArrayList<Integer> list){
        for(int i = 0; i<matrix[0].length;i++){
            list.add(matrix[0][i]);
        }
        if(matrix.length == 1){
            return;
        }
        int[][] newarr = new int[matrix.length-1][matrix[0].length];
        for(int i = 1;i<matrix.length;i++){
            for(int j = 0;j<matrix[i].length;j++){
                newarr[i-1][j] = matrix[i][j];
            }    
        }
        newarr = reverseMatrix(newarr);
        luoxuan(newarr,list);
    }
}
全部评论

相关推荐

合适才能收到offe...:招聘上写这些态度傲慢的就别继续招呼了,你会发现hr和面试官挺神的,本来求职艰难就可能影响一些心态了,你去这种公司面试的话,整个心态会炸的。
点赞 评论 收藏
分享
老板加个卤鸡蛋:HR看了以为来卧底来了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务