美文网首页
矩阵的转置

矩阵的转置

作者: IT孤独者 | 来源:发表于2017-02-08 11:10 被阅读0次

其实矩阵的转置算法是比较容易理解的,我之所以写本文,是想提醒自己C++中的STL库使用起来真是方便极了。

代码如下:

#include <vector>
#include <algorithm>
#include <iostream>
using std::vector;
using std::for_each;
using std::cout;
using std::endl;

void OutNum(int num)
{
    cout << num << " ";
}

void OutNumSeq(const vector<int> & vecNum)
{
    for_each(vecNum.begin(), vecNum.end(), OutNum);
    cout << endl;
}

void Zhuanzhi(vector<vector<int> > & vecB, const vector<vector<int> > & vecA)
{
    int I = vecA.size();
    
    if (I <= 0 )
        return;
    
    int J = vecA[0].size();
    
    vecB.assign(J, vector<int>(I, 0));

    for (int i=0; i<I; ++i) {
        for (int j=0; j<J; ++j) {
            vecB[j][i] = vecA[i][j];
        }
    }
}

int main(int argc, char ** argv)
{
    vector<vector<int> > vecA = { {0, 1, 2, 3}, {4, 5, 6, 7} };
    vector<vector<int> > vecB;

    cout << "A:" << endl;
    for_each(vecA.begin(), vecA.end(), OutNumSeq);

    Zhuanzhi(vecB, vecA);

    cout << "B:" << endl;
    for_each(vecB.begin(), vecB.end(), OutNumSeq);

    return 0;
}

输出:

输出.png

相关文章

  • 2019-02-22 Day 48 待提高

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

  • 机器学习里的数学基础——矩阵论

    1. 基本概念 1.1 向量及其转置 一个维列向量及其转置可记作: 1.2 矩阵及其转置 一个的矩阵及其的转置矩阵...

  • 2019-03-13

    矩阵的转置则称 为A的转置,记为 设为矩阵,则为 矩阵 为对称矩阵,则 为反对称矩阵,则 为n阶方阵,,为对称矩阵...

  • 正交矩阵

    转置矩阵为其逆矩阵。

  • 矩阵

    参考资料转置矩阵伴随矩阵

  • 12、转置矩阵

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

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

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

  • LeetCode 867. 转置矩阵

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

  • LeetCode(867)

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

  • 867. 转置矩阵

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

网友评论

      本文标题:矩阵的转置

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