leetcode-54 螺旋矩阵
生活随笔
收集整理的這篇文章主要介紹了
leetcode-54 螺旋矩阵
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目:
給定一個(gè)包含?m x n?個(gè)元素的矩陣(m 行, n 列),請(qǐng)按照順時(shí)針螺旋順序,返回矩陣中的所有元素。
示例?1:
輸入:
[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
輸出: [1,2,3,6,9,8,7,4,5]
示例?2:
輸入:
[
?[1, 2, 3, 4],
?[5, 6, 7, 8],
?[9,10,11,12]
]
輸出: [1,2,3,4,8,12,11,10,9,5,6,7]
c++代碼,解題思路同59題:
class Solution { public:vector<int> spiralOrder(vector<vector<int>>& matrix) {/*思路:同59 螺旋矩陣 2*/vector<int> res;if(matrix.empty()) return res;int up = 0;int down = matrix.size() - 1; //colint left = 0;int right = matrix[0].size() - 1; //rowwhile(up <= down && left <= right){//left --> rightfor(int i = left; i <= right; i++){ res.push_back(matrix[up][i]); //添加到res}//下一步要走的方向,依次類推if(++up > down) break;//up --> downfor(int i = up; i <= down; i++){res.push_back(matrix[i][right]);}if(--right < left) break; //right --> leftfor(int i = right; i >= left; i--){res.push_back(matrix[down][i]);}if(--down < up) break; //down --> upfor(int i = down; i >= up; i--){res.push_back(matrix[i][left]);}if(++left > right) break;}return res;} };轉(zhuǎn)載于:https://www.cnblogs.com/fightingcode/p/11047082.html
總結(jié)
以上是生活随笔為你收集整理的leetcode-54 螺旋矩阵的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 情感网名男生84个
- 下一篇: 描写雪的古诗20首合集