Given a matrix A, return the transpose of A.
The transpose of a matrix is the matrix flipped over it’s main diagonal, switching the row and column indices of the matrix.
Example 1:
Input: [[1,2,3],[4,5,6],[7,8,9]]
Output: [[1,4,7],[2,5,8],[3,6,9]]
Example 2:
Input: [[1,2,3],[4,5,6]]
Output: [[1,4],[2,5],[3,6]]
题目就是把矩阵的行和列互换。
C++代码:
class Solution {
public:
vector<vector<int>> transpose(vector<vector<int>>& A) {
int n=A.size(),m=A[0].size();
vector<vector<int>> B(m, vector<int>(n, 0));
if (n == 0) return B;
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
//B[i].push_back(A[j][i]);
B[i][j]=A[j][i];
}
}
return B;
}
};
PYTHON:
class Solution:
def transpose(self, A):
"""
:type A: List[List[int]]
:rtype: List[List[int]]
"""
n, m = len(A), len(A[0])
ans=[[0 for i in range(n)] for i in range(m)]
for i in range(m):
for j in range(n):
ans[i][j]=A[j][i]
return ans;