59. Spiral Matrix II

来源:互联网 发布:java架构师视频双11 编辑:程序博客网 时间:2024/05/02 04:16

Spiral Matrix II

对比上一题 此题的题意:
这里写图片描述
其实跟上一题一样 同样使用四个for循环 主要注意不要搞混变量 不然很烦

代码

public class Solution {    public int[][] generateMatrix(int n) {        int[][] ret = new int[n][n];        int top = 0,left = 0;        int right = n - 1, down = n - 1;        int count = 1;        while(left <= right){            for(int i = left; i <= right; i++){//先从左到右                ret[top][i] = count++;            }            top++;            for(int i = top; i <= down; i++){//再从上向下                ret[i][right] = count++;            }            right--;            for(int i = right; i >= left; i--){//然后从左到右                ret[down][i] = count++;            }            down--;            for(int i = down; i >= top; i--){//最后从下向上                ret[i][left] = count++;            }            left++;        }        return ret;    }}
1 0