55https://stackoverflow.com/questions/42519/how-do-you-rotate-a-two-dimensional-array
66"""
77
8+ from __future__ import annotations
89
9- def make_matrix (row_size : int = 4 ) -> [[int ]]:
10+
11+ def make_matrix (row_size : int = 4 ) -> list [list ]:
1012 """
1113 >>> make_matrix()
1214 [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
@@ -23,7 +25,7 @@ def make_matrix(row_size: int = 4) -> [[int]]:
2325 return [[1 + x + y * row_size for x in range (row_size )] for y in range (row_size )]
2426
2527
26- def rotate_90 (matrix : [[]] ) -> [[] ]:
28+ def rotate_90 (matrix : list [ list ] ) -> list [ list ]:
2729 """
2830 >>> rotate_90(make_matrix())
2931 [[4, 8, 12, 16], [3, 7, 11, 15], [2, 6, 10, 14], [1, 5, 9, 13]]
@@ -35,7 +37,7 @@ def rotate_90(matrix: [[]]) -> [[]]:
3537 # OR.. transpose(reverse_column(matrix))
3638
3739
38- def rotate_180 (matrix : [[]] ) -> [[] ]:
40+ def rotate_180 (matrix : list [ list ] ) -> list [ list ]:
3941 """
4042 >>> rotate_180(make_matrix())
4143 [[16, 15, 14, 13], [12, 11, 10, 9], [8, 7, 6, 5], [4, 3, 2, 1]]
@@ -47,7 +49,7 @@ def rotate_180(matrix: [[]]) -> [[]]:
4749 # OR.. reverse_column(reverse_row(matrix))
4850
4951
50- def rotate_270 (matrix : [[]] ) -> [[] ]:
52+ def rotate_270 (matrix : list [ list ] ) -> list [ list ]:
5153 """
5254 >>> rotate_270(make_matrix())
5355 [[13, 9, 5, 1], [14, 10, 6, 2], [15, 11, 7, 3], [16, 12, 8, 4]]
@@ -59,22 +61,22 @@ def rotate_270(matrix: [[]]) -> [[]]:
5961 # OR.. transpose(reverse_row(matrix))
6062
6163
62- def transpose (matrix : [[]] ) -> [[] ]:
64+ def transpose (matrix : list [ list ] ) -> list [ list ]:
6365 matrix [:] = [list (x ) for x in zip (* matrix )]
6466 return matrix
6567
6668
67- def reverse_row (matrix : [[]] ) -> [[] ]:
69+ def reverse_row (matrix : list [ list ] ) -> list [ list ]:
6870 matrix [:] = matrix [::- 1 ]
6971 return matrix
7072
7173
72- def reverse_column (matrix : [[]] ) -> [[] ]:
74+ def reverse_column (matrix : list [ list ] ) -> list [ list ]:
7375 matrix [:] = [x [::- 1 ] for x in matrix ]
7476 return matrix
7577
7678
77- def print_matrix (matrix : [[]] ) -> [[]] :
79+ def print_matrix (matrix : list [ list ] ) -> None :
7880 for i in matrix :
7981 print (* i )
8082
0 commit comments