leetcode.array--59. Spiral Matrix II
来源:互联网 发布:音频合并时间软件 编辑:程序博客网 时间:2024/04/29 22:30
题目:59. Spiral Matrix II
题目链接:https://leetcode.com/problems/spiral-matrix-ii/description/
这个题目的意思呢,是给定一个整数n,要求把数字1~n^2按照顺时针螺旋顺序填充到一个n维方阵里面。
跟之前的螺旋方向遍历差不多吧,也是直接改的前一题的代码。
Python:
class Solution(object): def generateMatrix(self, n): """ :type matrix: List[List[int]] :rtype: List[int] """ if n==0: return [] matrix=[[0 for col in range(n)] for row in range(n)] def cango(x,y): return x>=0 and x<n and y>=0 and y<n direct=[(0,1),(1,0),(0,-1),(-1,0)] vis=set() def dfs(matrix,step,x,y,curDirect): vis.add((x,y)) matrix[x][y]=step+1 if step==n*n-1: return nx,ny=x+curDirect[0],y+curDirect[1] if cango(nx,ny) and (nx,ny) not in vis: dfs(matrix,step+1,nx,ny,curDirect) else: for i in range(4): nx, ny = x + direct[i][0], y + direct[i][1] if cango(nx,ny) and (nx,ny) not in vis: dfs(matrix, step + 1, nx, ny, direct[i]) break dfs(matrix, 0, 0, 0, (0, 1)) return matrix
阅读全文
0 0
- leetcode.array--59. Spiral Matrix II
- LeetCode[Array]: Spiral Matrix II
- LeetCode-59-Spiral Matrix II(Array)-Medium
- LeetCode刷题【Array】 Spiral Matrix II
- [LeetCode]59.Spiral Matrix II
- LeetCode --- 59. Spiral Matrix II
- [Leetcode] 59. Spiral Matrix II
- [leetcode] 59.Spiral Matrix II
- LeetCode 59. Spiral Matrix II
- 59. Spiral Matrix II LeetCode
- [leetcode] 59. Spiral Matrix II
- leetcode 59. Spiral Matrix II
- LeetCode 59. Spiral Matrix II
- leetcode 59. Spiral Matrix II
- LeetCode *** 59. Spiral Matrix II
- leetcode 59. Spiral Matrix II
- Leetcode 59. Spiral Matrix II
- LeetCode 59. Spiral Matrix II
- Kubernetes1.7新特性:支持绕过docker,直接通过containerd管理容器
- hdoj 5532 Almost Sorted Array
- oracle报错: “not a single-group group function”
- 【R】提升R代码运算效率的11个实用方法
- Java 五大框架之间的对比
- leetcode.array--59. Spiral Matrix II
- [agc009c]Division into Two
- 构建工具-----Gradle(二)-----myeclipse 10和myeclipse2015安装gradle插件----其他版本的myeclipse类似
- hdu 6124.Euler theorem
- 解析Java 内存模型—— JMM
- DNS解析过程
- MFC 加入背景音乐
- 周四见|《基于Consul的数据库高可用架构》公开课
- js断点调试心得