力扣.旋转矩阵

54. 螺旋矩阵 - 力扣(LeetCode)

代码区:

cpp 复制代码
class Solution {
public:
    vector<int> spiralOrder(vector<vector<int>>& matrix) {
        vector<int> ans;
        int hang=matrix.size();
        int lie=matrix[0].size();
        int start_hang=0,start_lie=0,end_hang=hang-1,end_lie=lie-1;
        int step=hang*lie;
        while(step>=1){
            if(start_hang > end_hang || start_lie > end_lie) break;
            for(int i=start_lie;i<=end_lie;i++){//行不变,列增加
                ans.push_back(matrix[start_hang][i]);
                step--;
            }
            start_hang++;
            if(start_hang > end_hang || start_lie > end_lie) break;
            for(int i=start_hang;i<=end_hang;i++){//列不变,行增加
                ans.push_back(matrix[i][end_lie]);
                step--;
            }
            end_lie--;
            if(start_hang > end_hang || start_lie > end_lie) break;
            for(int i=end_lie;i>=start_lie;i--){//行不变,列减小
                ans.push_back(matrix[end_hang][i]);
                step--;
            }
            end_hang--;
            if(start_hang > end_hang || start_lie > end_lie) break;
            for(int i=end_hang;i>=start_hang;i--){//列不变,行增加
                ans.push_back(matrix[i][start_lie]);
                step--;
            }
            start_lie++;
        }
        return ans;
    }
};

欢迎各位读者提出意见。

(菜菜奋斗小日记)

相关推荐
芒果量化2 分钟前
量化交易 - 网格交易策略实现与原理解析
python·算法·机器学习·金融
MUTA️22 分钟前
ultalytics代码中模型接收多层输入的处理
深度学习·算法·yolo·机器学习·计算机视觉
feifeigo1231 小时前
基于粒子群算法的配电网重构
算法·重构
XiaoyaoCarter2 小时前
每日一道leetcode(新学数据结构版)
数据结构·c++·算法·leetcode·职场和发展·哈希算法·前缀树
晴空闲雲2 小时前
数据结构与算法-线性表-单链表(Linked List)
数据结构·算法·链表
zm2 小时前
服务器连接多客户端
java·javascript·算法
HappyAcmen3 小时前
线代第二章矩阵第九、十节:初等变换、矩阵的标准形、阶梯形与行最简阶梯形、初等矩阵
笔记·学习·线性代数·矩阵
fancy1661663 小时前
搜索二维矩阵 II
c++·算法·矩阵
freyazzr3 小时前
Leetcode刷题 | Day63_图论08_拓扑排序
数据结构·c++·算法·leetcode·图论
暴龙胡乱写博客3 小时前
机器学习 --- KNN算法
人工智能·算法·机器学习