leetcode-867-Transpose-Matrix

描述


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:

1
2
Input: [[1,2,3],[4,5,6],[7,8,9]]
Output: [[1,4,7],[2,5,8],[3,6,9]]

Example 2:

1
2
Input: [[1,2,3],[4,5,6]]
Output: [[1,4],[2,5],[3,6]]

Note:

  1. 1 <= A.length <= 1000
  2. 1 <= A[0].length <= 1000

分析


声明一个行数,列数跟原数组相反的数组,便利一遍原数组的同时对新数组进行赋值。

解决方案1(Java)


1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public int[][] transpose(int[][] A) {
int height = A.length;
int length = A[0].length;
int[][] result = new int[length][height];
for (int i = 0; i < A.length; i++) {
for (int j = 0; j < A[0].length; j++) {
result[j][i] = A[i][j];
}
}
return result;
}
}

题目来源