leetcode:螺旋矩阵

2024-10-19 

https://leetcode.cn/problems/spiral-matrix/description/?envType=study-plan-v2&envId=top-interview-150

 

 

 

复制代码
 1 class Solution:
 2     def spiralOrder(self, matrix: List[List[int]]) -> List[int]:
 3 
 4         m = len(matrix)
 5         n = len(matrix[0])
 6 
 7         u = 0
 8         d = m - 1
 9         l = 0
10         r = n - 1
11 
12         ans = []
13 
14         while(True):
15             for i in range(l,r+1):
16                 ans.append(matrix[u][i])
17             u += 1
18             if(u>d): break
19             for i in range(u,d+1):
20                 ans.append(matrix[i][r])
21             r -= 1
22             if(r<l): break
23             for j in range(l,r+1):
24                 ans.append(matrix[d][r+l-j])
25             d -= 1
26             if(u>d): break
27             for i in range(u,d+1):
28                 ans.append(matrix[d+u-i][l])
29             l += 1
30             if(l>r): break
31         
32         return ans
复制代码

 

posted @   xiaoxinlong  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
AmazingCounters.com
点击右上角即可分享
微信分享提示