classSolution:defspiralOrder(self, matrix: List[List[int]])-> List[int]:if matrix ==[]:return[]
left, right, up, down, result =0,len(matrix[0])-1,0,len(matrix)-1,[]while1:for i inrange(left,right+1): result.append(matrix[up][i])
up +=1if up > down:breakfor i inrange(up,down+1): result.append(matrix[i][right])
right -=1if left > right:breakfor i inrange(right,left-1,-1): result.append(matrix[down][i])
down -=1if up > down:breakfor i inrange(down,up-1,-1): result.append(matrix[i][left])
left +=1if left > right:breakreturn result
# 执行用时 :52 ms, 在所有 Python3 提交中击败了57.55%的用户# 内存消耗 :14 MB, 在所有 Python3 提交中击败了100.00%的用户