LeetCode54题:螺旋矩阵(python3)

路径的长度即为矩阵中的元素数量,当路径的长度达到矩阵中的元素数量时即为完整路径,将该路径返回。

循环打印: "从左向右、从上向下、从右向左、从下向上" 四个方向循环打印。

python 复制代码
class Solution:
    def spiralOrder(self, matrix: List[List[int]]) -> List[int]:
        if not matrix or not matrix[0]:
            return []
        r,c = len(matrix),len(matrix[0])
        res=[]
        left,right,top,bottom = 0,c-1,0,r-1
        while left<=right and top<=bottom:
            for i in range(left,right+1):
                res.append(matrix[top][i])
            for j in range(top+1,bottom+1):
                res.append(matrix[j][right])
            if left<right and top<bottom:
                for i in range(right-1,left,-1):
                    res.append(matrix[bottom][i])
                for j in range(bottom,top,-1):
                    res.append(matrix[j][left])
            left,right,top,bottom=left+1,right-1,top+1,bottom-1
        return res
相关推荐
IT·小灰灰4 分钟前
AI学会理解物理法则:OpenAI Sora 2如何重塑视频生成新范式
人工智能·python·深度学习·机器学习·数据挖掘·音视频
AI科技星11 分钟前
姬无烦科幻与张祥前统一场论的完美融合
数据结构·人工智能·算法·机器学习·重构
记忆偶然12 分钟前
语音转写技术在专业服务领域的应用实践
python
comli_cn15 分钟前
Adam算法
人工智能·算法·机器学习
暗之星瞳16 分钟前
python爬虫学习——1
爬虫·python·学习
另寻沧海32 分钟前
C++ Lambda表达式的隐式转换陷阱
java·c++·算法
二川bro35 分钟前
字符串特性解析:Python不可变性引发的错误
android·开发语言·python
菜鸟233号35 分钟前
力扣654 最大二叉树 java实现
java·算法·leetcode
呆萌小新@渊洁44 分钟前
声纹模型全流程实践-开发(训练 - 微调 - 部署 - 调用)
linux·服务器·python·语音识别
TL滕1 小时前
从0开始学算法——第十四天(数组与搜索)
数据结构·笔记·学习·算法