cron表示式詳解,cron表示式寫法,cron表示式例子
阿新 • • 發佈:2022-05-16
59. 螺旋矩陣 II
給你一個正整數 n
,生成一個包含 1
到 n2
所有元素,且元素按順時針順序螺旋排列的 n x n
正方形矩陣 matrix
。
示例 1:
輸入:n = 3
輸出:[[1,2,3],[8,9,4],[7,6,5]]
示例 2:
輸入:n = 1
輸出:[[1]]
提示:
1 <= n <= 20
思路:
與螺旋矩陣一沒有任何變化- -
class Solution { public: vector<vector<int>> generateMatrix(int n) { vector<vector<int>> ans(n, vector<int>(n,0)); //與螺旋矩陣完全一樣。 int upper_bound=0; int bottom_bound=n-1; int left_bound=0; int right_bound=n-1; int num=1; while(num<=(n*n)){ //頂部從左到右 if(upper_bound<=bottom_bound){ for(int i=left_bound;i<=right_bound;i++){ ans[upper_bound][i]=num++; } upper_bound++; } //右邊從上到下 if(left_bound<=right_bound){ for(int i=upper_bound;i<=bottom_bound;i++){ ans[i][right_bound]=num++; } right_bound--; } //底部從右到左 if(upper_bound<=bottom_bound){ for(int i=right_bound;i>=left_bound;i--){ ans[bottom_bound][i]=num++; } bottom_bound--; } //左邊從下到上 if(left_bound<=right_bound){ for(int i=bottom_bound;i>=upper_bound;i--){ ans[i][left_bound]=num++; } left_bound++; } } return ans; } };