欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

LeetCode算法题(数组相关)(一)——转置矩阵

程序员文章站 2022-03-01 20:44:45
...

问题:

给定一个矩阵 A, 返回 A 的转置矩阵。

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

作为一个算法的菜鸟,这是自己独立做出来的第一道题。虽然很简单,但也是里程碑,从这里开始我的刷题之旅。

算法思想:

实在想不到什么能减少复杂度的算法,一个很简单的思想就是:

step1: 将给定矩阵A的行列长度分别计算出来

step2: 新创建一个二维数组B,将二维数组B的长度和宽度,分别设置为给定矩阵的宽度和长度。

step3: 通过B[j][i] = A[i][j]来对矩阵进行转置

代码:

class Solution {
    public int[][] transpose(int[][] A) {
        int xlength = A.length;
	    int ylength = A[0].length;
        int[][] B = new int[ylength][xlength];
        for(int i = 0;i<xlength;i++){
	        	for(int j = 0;j<ylength;j++){
                    B[j][i] = A[i][j];
	        	}
	        }
            return B;
    }
}