1. 程式人生 > >劍指offer_第19題_順時針列印矩陣_Python

劍指offer_第19題_順時針列印矩陣_Python

題目描述

  • 輸入一個矩陣
  • 按照從外向裡以順時針的順序依次打印出每一個數字
  • 例如,如果輸入如下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