Leetcode 867.转置矩阵 2021.02.25

Leetcode 867.转置矩阵 2021.02.25

二月 25, 2021

867.转置矩阵

  • 难度:简单

给你一个二维整数数组 matrix, 返回 matrix 的 转置矩阵 。

矩阵的 转置 是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。

转置矩阵

示例

示例1:

输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[[1,4,7],[2,5,8],[3,6,9]]

示例2:

输入:matrix = [[1,2,3],[4,5,6]]
输出:[[1,4],[2,5],[3,6]]

说明

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 1000
  • 1 <= m * n <= 105
  • -10^9 <= matrix[i][j] <= 10^9

思路

  • 无脑照搬
    1. 实例化数组res,列为数组matrix的行,行为数组matrix的列
    2. 数组res的列赋值数组matrix的行,数组res的行赋值数组matrix的列

代码实现

1
2
3
4
5
6
7
8
9
10
11
vector<vector<int>> transpose(vector<vector<int>>& matrix) {
//实例化res,列为matrix的行,行为数组matrix的列
vector<vector<int>> res(matrix[0].size(),vector<int>(matrix.size()));
for(int i = 0;i<res.size();i++){
for(int j = 0;j<res[i].size();j++){
//给res的列赋值matrix的行,res的行赋值matrix的列
res[i][j] = matrix[j][i];
}
}
return res;
}