美文网首页
leetcode-数组篇-转置数组(867)

leetcode-数组篇-转置数组(867)

作者: 青辰m | 来源:发表于2020-12-07 19:56 被阅读0次

题目

给定一个矩阵 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]]

解法1:

var transpose = function(A) {
    let result = [];
    for (let i = 0; i < A[0].length; i++) {
        let temp = [];
        for (let j = 0; j < A.length; j++) { 
            temp.push(A[j][i])
        }
        result.push(temp);
    }
    return result;
};

解法2:

转置数组实质上是角码的对调

var transpose2 = function(A) {
    let B = [];
    for(let i in A) {
        for (let j in A[i]) {
            if (!B[j]) {B[j] = [];}
            B[j][i] = A[i][j];
        }
    }
    return B
};

解法3

利用Array.from生成指定长度的空数组

var transpose3 = function(A) {
    const rotateArr = Array.from({ length: A[0].length }, () => [])
    A.forEach((v) => {
        v.forEach((item, idx) => {
            rotateArr[idx].push(item)
        })
    })
    return rotateArr
};

相关文章

  • leetcode-数组篇-转置数组(867)

    题目 给定一个矩阵 A, 返回 A 的转置矩阵。 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。 ...

  • LeetCode-数组-867.转置矩阵

    题目描述 给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。 水平翻转图片就是将图片的每一行都...

  • 算法练习100天-第5天

    列别:数组 题目: 867. 转置矩阵 我的解题思路: 转置矩阵就是交换矩阵的行索引、列索引 定义一个新的二维数组...

  • 数组

    二维不规则数组的打印 打印数组结构 数组的冒泡排序 对一列数组进行简单的两两比较升序排列 结果 数组转置 数组转置...

  • Vue 纵向Table转横向Table (转置)

    数组参照矩阵思想, 对数组进行转置。 缺点: 转置后的数组仅是单纯的存每一行数据的数组用于展示, 失去了原数组...

  • PHP 工具之数组

    二维数组值 二维数组翻转 二维数组转置

  • Java一维数组和二维数组的转置

    数组的转置就是将数组的内容倒序进行保存。例如:数组从下标0开始元素内容为1,2,3,4,5,6,将这个数组转置以后...

  • 2018-12-02

    Java二维数组的遍历及其转置详解 1.首先我们需要定义一个二维数组 2.对数组进行遍历 3.对数组进行转置操作 ...

  • Numpy基础——第二篇

    本章内容: 数组的删除 数组的去重 数组的拼接 数组分割 数组转置 Numpy计算函数 一、数组的删除 delet...

  • python numpy数组转置和矩阵乘法

    末尾有福利(手动滑稽~) 一.转置 数组转置 1.使用 array.T: 1.对于array对象,若是一维数组(行...

网友评论

      本文标题:leetcode-数组篇-转置数组(867)

      本文链接:https://www.haomeiwen.com/subject/tngtgktx.html