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 <=10⁵
- -10⁹ <= matrix[i][j] <= 10⁹
代码参考:
package main
import "fmt"
func main() {
fmt.Println(transpose([][]int{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}))
fmt.Println(transpose([][]int{{1, 2, 3}, {4, 5, 6}}))
}
func transpose(A [][]int) [][]int {
if len(A) <= 0 {
return A
}
n, m := len(A), len(A[0])
res := make([][]int, m) // 新行数取原列数
for i := 0; i < n; i++ {
for j := 0; j < m; j++ {
res[j] = append(res[j], A[i][j])
}
}
return res
}
最后编辑: kuteng 文档更新时间: 2021-06-05 10:16 作者:kuteng