19.顺时针打印矩阵(python)
2024-09-05 10:15:30
题目描述
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.
# -*- coding:utf-8 -*-
class Solution:
# matrix类型为二维列表,需要返回列表
def printMatrix(self, matrix):
# write code here
def help(topRow,topCol,botRow,botCol): if topRow == botRow:#只有一行:
while topCol <=botCol:
res.append(matrix[topRow][topCol])
topCol+=1
elif topCol == botCol:#只有一行
while topRow<=botRow:
res.append(matrix[topRow][topCol])
topRow+=1
else:
curCol=topCol
curRow=topRow
while curCol<botCol:
res.append(matrix[topRow][curCol])
curCol+=1
while curRow<botRow:
res.append(matrix[curRow][botCol])
curRow+=1
while curCol>topCol:
res.append(matrix[botRow][curCol])
curCol-=1
while curRow>topRow:
res.append(matrix[curRow][topCol])
curRow-=1
if len(matrix)==1:
return matrix[0]
res=[]
topRow=0
topCol=0
botRow=len(matrix)-1
botCol=len(matrix[0])-1 while topRow<=botRow and topCol<=botCol:
help(topRow,topCol,botRow,botCol)
topRow+=1
topCol+=1
botRow-=1
botCol-=1
return res
最新文章
- cs11_adventure c++_lab1
- C#应用程序获取项目路径的方法总结
- MVC 学习随笔(一)
- CoreData多表操作.
- c++ 类名和enum时重复时要在类名前加class::
- GNU C的使用
- Deploy Oracle 10.2.0.5 on Red Hat Enterprise Linux 6.4
- C语言第十一次博客作业---函数嵌套调用
- 安卓Toast自定义及防止重复显示
- @Controller @RestController
- .NET面试题01-值类型与引用类型
- 服务器 nginx配置 防止其他域名绑定自己的服务器
- 自己实现数据结构系列一---ArrayList
- Eureka-zookeeper的服务发现替代方案
- strcmp用法
- 黄聪: bootstrap 多模态框实现
- vc++获取网页源码之使用import+智能指针包装类
- ORM对单表的增删改查
- 在window主机上访问virtualbox虚拟机上centos7的tomcat服务
- 关于Vue的nextTick的一点小理解