aboutsummaryrefslogtreecommitdiff
path: root/transpose_matrix.py
diff options
context:
space:
mode:
Diffstat (limited to 'transpose_matrix.py')
-rw-r--r--transpose_matrix.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/transpose_matrix.py b/transpose_matrix.py
new file mode 100644
index 0000000..4c2c684
--- /dev/null
+++ b/transpose_matrix.py
@@ -0,0 +1,28 @@
+# 867. Transpose Matrix
+
+"""
+given a 2d integer array 'matrix', return the transpose of 'matrix'. the
+transpose of a matrix is the matrix flipped over its main diagonal switching
+the matrix's rows and column indices
+"""
+
+
+class Solution(object):
+ def transpose(self, matrix):
+ """
+ :type matrix: List[List[int]]
+ :rtype: List[List[int]]
+ """
+ n = len(matrix)
+ m = len(matrix[0])
+ ans = [[0] * n for _ in range(m)]
+ for i in range(n):
+ for j in range(m):
+ ans[j][i] = matrix[i][j]
+ return ans
+
+
+if __name__ == "__main__":
+ obj = Solution()
+ print(obj.transpose(matrix=[[1, 2, 3], [4, 5, 6], [7, 8, 9]]))
+ print(obj.transpose(matrix=[[1, 2, 3], [4, 5, 6]]))