劍指offer_第19題_順時針列印矩陣_Python
阿新 • • 發佈:2018-12-09
題目描述
- 輸入一個矩陣
- 按照從外向裡以順時針的順序依次打印出每一個數字
- 例如,如果輸入如下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.
解題思路
思路1
class Solution:
# matrix型別為二維列表,需要返回列表
def printMatrix(self, matrix):
# write code here
result = []
while matrix:
result += matrix.pop(0 )
if matrix:
matrix = self.reverse_matrix(matrix)
return result
def reverse_matrix(self,matrix):
row = len(matrix)
col = len(matrix[0])
new_matrix = []
for i in range(col):
new_line = []
for j in range(row):
new_line.append(matrix[j][col-i-1 ])
new_matrix.append(new_line)
return new_matrix