栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

leetcode笔记总结——(14)螺旋数组(python编写)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

leetcode笔记总结——(14)螺旋数组(python编写)

我是这么标记的 首先上、下、左、右 各标记一个变量 每循环一圈 左和上加一 而右和下则减一。
注意边界 1 当n 1时 单独判断 2 n为奇数时 最中间的一个数要单独填充。

3、代码描述
class Solution:
 def generateMatrix(self, n: int) - List[List[int]]:
 res [[0 for _ in range(n)] for _ in range(n)]
 if n 1: # 1的情况单独判断
 res[0][0] 1
 return res
 value 1 # 要填充的值
 left, up 0, 0
 right, low n-1, n-1
 while value n**2: # 只要小于等于n^2 则还没填充完
 # 从左向右
 for i in range(left, right):
 res[up][i] value
 value 1 # 填充完 1
 up 1 # 上层填了一行 需要去掉
 # 从上到下
 for i in range(up-1, low):
 res[i][right] value
 value 1
 right - 1 # 右边填了一列 需要去掉
 # 从右到左
 for i in range(right 1, left, -1):
 res[low][i] value
 value 1
 low - 1 # 下边填了一列 需要去掉
 # 从下到上
 for i in range(low 1, up-1, -1):
 res[i][left] value
 value 1
 left 1 # 左边填了一列 需要去掉
 if left right or up low: # n为单数的情况 最中间的数需要单独判断 
 res[left][up] value
 value 1
 return res

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267947.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号