牛客网每日一练

#
#
# @param matrix int整型二维数组
# @return int整型一维数组
#
class Solution:
    def spiralOrder(self , matrix ):
        res = []
        while matrix:
            res += matrix[0]
            matrix = list((zip(*matrix[1:])))[::-1]
        return res
        # write code here

给定一个m x n大小的矩阵(m行,n列),按螺旋的顺序返回矩阵中的所有元素

此题我学到了:

  在二维矩阵中切片如果不是[:,:]这种形式,而是[:]这种形式按行选取;

  zip(*)上下压缩元素例如[[1,2,3],[4,5,6]]压缩后为[(1,4),(2,5),(3,6)]

原文地址:https://www.cnblogs.com/nenu/p/14638425.html