zoukankan      html  css  js  c++  java
  • leetcode之转置矩阵

    转置矩阵

    题目描述:

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

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

    示例 1:

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

    示例 2:

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


    解题:
    尺寸为 R x C 的矩阵 A 转置后会得到尺寸为 C x R 的矩阵 ans,对此有 ans[c][r] = A[r][c]。

    class Solution {
        public int[][] transpose(int[][] A) {
            int row = A.length;
            int col = A[0].length;
            int[][] arr = new int[col][row];
            
            for(int r=0; r<row; r++){
                for(int c=0; c<col; c++){
                    arr[c][r] = A[r][c];  //行变列,列变行
                }
            }
            return arr;
        }
    }

    复杂度分析

    • 时间复杂度:O(RC),其中 R 和 C 是给定矩阵 A 的行数和列数。

    • 空间复杂度:O(RC),也就是答案所使用的空间。

  • 相关阅读:
    Delphi播放铃声
    小技巧
    Delphi线程中使用waitfor返回值
    window安装、启动consul
    kali2020-bash: openvas-setup:未找到命令 ,解决办法
    zookeeper 客户端
    redis 集群
    activeMQ
    Shiro
    Eclipse Java注释模板设置详解
  • 原文地址:https://www.cnblogs.com/lisen10/p/10707178.html
Copyright © 2011-2022 走看看