算法:螺旋矩阵 ||
生活随笔
收集整理的這篇文章主要介紹了
算法:螺旋矩阵 ||
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?給定一個正整數?n,生成一個包含 1 到n 2 n^2n2?所有元素,且元素按順時針順序螺旋排列的正方形矩陣。
示例:
輸入: 3 輸出: [[ 1, 2, 3 ],[ 8, 9, 4 ],[ 7, 6, 5 ] ] //分別對每個邊界進行賦值 class Solution {//假設3*3矩陣public int[][] generateMatrix(int n) {//左右上下邊界int l = 0, r = n - 1, t = 0, b = n - 1;int[][] mat = new int[n][n];//tar 是總數 int num = 1, tar = n * n;while(num <= tar){for(int i = l; i <= r; i++) mat[t][i] = num++; // left to right.t++;for(int i = t; i <= b; i++) mat[i][r] = num++; // top to bottom.r--;for(int i = r; i >= l; i--) mat[b][i] = num++; // right to left.b--;for(int i = b; i >= t; i--) mat[i][l] = num++; // bottom to top.l++;}return mat;} }鏈接:https://leetcode-cn.com/problems/spiral-matrix-ii/solution/spiral-matrix-ii-mo-ni-fa-she-ding-bian-jie-qing-x/
總結
以上是生活随笔為你收集整理的算法:螺旋矩阵 ||的全部內容,希望文章能夠幫你解決所遇到的問題。