博客
关于我
顺时针打印矩阵
阅读量:338 次
发布时间:2019-03-03

本文共 1184 字,大约阅读时间需要 3 分钟。

在这里插入图片描述

难度竟然是简单,我错了好几次。。。。。。

# -*- coding:utf-8 -*-class Solution:    # matrix类型为二维列表,需要返回列表    def printMatrix(self, matrix):        # write code here        res = []        if len(matrix) == 0:            return res        top = 0        bottom = len(matrix) - 1        left = 0        right = len(matrix[0]) - 1        while True:            for i in range(left, right + 1):                res.append(matrix[top][i])            top  = top + 1            if top > bottom: break;            for i in range(top, bottom +1):                res.append(matrix[i][right])            right = right - 1            if right < left: break;            for i in range(right, left-1, -1):                res.append(matrix[bottom][i])            bottom = bottom - 1            if bottom < top: break;            for i in range(bottom, top-1, -1):                res.append(matrix[i][left])            left = left + 1            if left > right: break;                    return res

**

奇淫技巧

**

class Solution:    def spiralOrder(self, matrix: List[List[int]]) -> List[int]:        res = []        while matrix:            res += matrix.pop(0)            matrix = list(zip(*matrix))[::-1]        return res

转载地址:http://cysl.baihongyu.com/

你可能感兴趣的文章
mysql的grant用法
查看>>
Mysql的InnoDB引擎的表锁与行锁
查看>>
mysql的InnoDB引擎索引为什么使用B+Tree
查看>>
MySQL的InnoDB默认隔离级别为 Repeatable read(可重复读)为啥能解决幻读问题?
查看>>
MySQL的insert-on-duplicate语句详解
查看>>
mysql的logrotate脚本
查看>>
MySQL的my.cnf文件(解决5.7.18下没有my-default.cnf)
查看>>
MySQL的on duplicate key update 的使用
查看>>
MySQL的Replace用法详解
查看>>
mysql的root用户无法建库的问题
查看>>
mysql的sql_mode参数
查看>>
MySQL的sql_mode模式说明及设置
查看>>
mysql的sql执行计划详解
查看>>
mysql的sql语句基本练习
查看>>
Mysql的timestamp(时间戳)详解以及2038问题的解决方案
查看>>
mysql的util类怎么写_自己写的mysql类
查看>>
MySQL的xml中对大于,小于,等于的处理转换
查看>>
Mysql的两种存储引擎详细分析及区别(全)
查看>>
mysql的临时表简介
查看>>
MySQL的主从复制云栖社区_mysql 主从复制配置
查看>>