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 row and column indices.
Example 1:
Input: matrix = [[1,2,3],[4,5,6],[7,8,9]]
Output: [[1,4,7],[2,5,8],[3,6,9]]
Example 2:
Input: matrix = [[1,2,3],[4,5,6]]
Output: [[1,4],[2,5],[3,6]]
class Solution {
public:
vector<vector<int>> transpose(vector<vector<int>>& matrix) {
int row = matrix.size();
int column = matrix[0].size();
vector<vector<int>> ans(column, vector<int>(row, 0));
for(int i=0; i<row; i++){
for(int j=0; j<column; j++){
ans[j][i]=matrix[i][j];
}
}
return ans;
}
};
Runtime: 12 ms, faster than 67.75% of C++ online submissions for Transpose Matrix.
Memory Usage: 10.4 MB, less than 99.73% of C++ online submissions for Transpose Matrix.