iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++实现转置矩阵的循环
  • 956
分享到

C++实现转置矩阵的循环

2024-04-02 19:04:59 956人浏览 独家记忆
摘要

目录前言一、思路分析二、代码实现1.转置矩阵函数2.调用函数实现转置矩阵总结前言 矩阵的转置主要考查我们对循环的使用,通过简单的循环结构,我们可以很方便的完成矩阵的转置。 一、思路

前言

矩阵的转置主要考查我们对循环的使用,通过简单的循环结构,我们可以很方便的完成矩阵的转置。

在这里插入图片描述

一、思路分析

转置矩阵与原矩阵的区别在于行列交换,我们可以构建一个二维数组完成对原矩阵的存储,我们只需将每个元素与其行列相反的位置处的元素进行交换,就可完成对矩阵的转置。

在这里插入图片描述

二、代码实现

1.转置矩阵函数

我们首先编写一个函数,完成对矩阵的转置。

代码如下(示例):



// 转职矩阵函数,按照指定的矩阵大小将矩阵转置
void transpose_matrix(int matrix[10][10], int a);

// 函数实现
void transpose_matrix(int matrix[10][10], int a) // int matrix[10][10] 为存储矩阵的数组,int a 为所需转置矩阵的大小
{
	int mid = 0; // 中间量,辅助值的传递

	for (int i = 0; i < a; i++) // 从行开始,逐行检索
	{
		for (int j = i + 1; j < a; j++) // 对该行每一列的元素检索
		{
		// 将对应位置的两个元素交换位置
			mid = matrix[i][j];
			matrix[i][j] = matrix[j][i];
			matrix[j][i] = mid;
		}
	}

	return;
}

2.调用函数实现转置矩阵

我们在主函数中只需调用已经写好的函数,对转置前后的矩阵分别输出即可。

代码如下(示例):



#include<iOStream>
using namespace std;

// 转职矩阵函数,按照指定的矩阵大小将矩阵转置
void transpose_matrix(int matrix[10][10], int a);

int main()
{

	int matrix[10][10];
	int size = 0;


	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			matrix[i][j] = (i * i + j * i + j ^ i) % 10;
		}
	}

	//  读入要求的矩阵大小,方便起见,使用矩阵的默认值,默认为方阵
	cout << "请输入矩阵的尺寸 (方便起见,矩阵大小设在10以内) :\n";
	cout << "size = ";
	cin >> size;

	cout << "\n原矩阵为:\n";

	// 输出原矩阵
	for (int i = 0; i < size; i++)
	{
		for (int j = 0; j < size; j++)
		{
			cout << matrix[i][j] << "  ";
		}
		cout << endl;
	}

	transpose_matrix(matrix, size);

	cout << "\n转置后的矩阵为:\n";

	//  输出转置后的矩阵
	for (int i = 0; i < size; i++)
	{
		for (int j = 0; j < size; j++)
		{
			cout << matrix[i][j] << "  ";
		}
		cout << endl;
	}

	return 0;

}

void transpose_matrix(int matrix[10][10], int a)
// int matrix[10][10] 为存储矩阵的数组,int a 为所需转置矩阵的大小
{
	int mid = 0; // 中间量,辅助值的传递

	for (int i = 0; i < a; i++) // 从行开始,逐行检索
	{
		for (int j = i + 1; j < a; j++) // 对该行每一列的元素检索
		{
			// 将对应位置的两个元素交换位置
			mid = matrix[i][j];
			matrix[i][j] = matrix[j][i];
			matrix[j][i] = mid;
		}
	}

	return;
}

运行程序,看看效果如何。

在这里插入图片描述

在这里插入图片描述

正常运行,且功能完整,可以放心复制黏贴使用。

总结

矩阵转置,除了本文介绍的方法外,还可以利用三元组的形式完成对稀疏矩阵的转置,感兴趣的话不妨点个关注,会在后续的数据和结构与算法专栏进行详细讲解哦!

到此这篇关于c++实现转置矩阵的循环的文章就介绍到这了,更多相关C++转置矩阵循环内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C++实现转置矩阵的循环

本文链接: https://www.lsjlt.com/news/161426.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++实现转置矩阵的循环
    目录前言一、思路分析二、代码实现1.转置矩阵函数2.调用函数实现转置矩阵总结前言 矩阵的转置主要考查我们对循环的使用,通过简单的循环结构,我们可以很方便的完成矩阵的转置。 一、思路...
    99+
    2022-11-12
  • C++如何实现转置矩阵的循环
    这篇文章主要介绍了C++如何实现转置矩阵的循环,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言矩阵的转置主要考查我们对循环的使用,通过简单的循环结构,我们可以很方便的完成矩...
    99+
    2023-06-22
  • Python实现矩阵转置的方法分析
    本文实例讲述了Python实现矩阵转置的方法。分享给大家供大家参考,具体如下: 前几天群里有同学提出了一个问题:手头现在有个列表,列表里面两个元素,比如[1, 2],之后不断的添加新的列表,往原来相应位置添...
    99+
    2022-06-04
    矩阵 方法 Python
  • Python列表矩阵转置怎么实现
    要实现Python列表的矩阵转置,可以使用zip函数。下面是一个示例代码:```pythondef transpose(matrix...
    99+
    2023-09-29
    Python
  • PHP如何使用数组循环来实现矩阵乘法
    这篇文章主要介绍“PHP如何使用数组循环来实现矩阵乘法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP如何使用数组循环来实现矩阵乘法”文章能帮助大家解决问题。什么是矩阵乘法在数学中,一个矩阵是由...
    99+
    2023-07-06
  • C++矩阵运算的实现简单
    利用C++实现矩阵的构造,通过运算符的重载实现矩阵的乘法、加法等。并且实现矩阵形状的打印,矩阵的打印。 #include<iostream> #include<...
    99+
    2022-11-12
  • C语言中斐波那契数列的三种实现方式(递归、循环、矩阵)
    目录一、递归二、循环三、矩阵《剑指offer》里讲到了一种斐波那契数列的 O(logN) 时间复杂度的实现,觉得挺有意思的,三种方法都记录一下。 一、递归    ...
    99+
    2022-11-13
  • C# BitArray(点矩阵)转换成int和string的方法实现
    BitArray的基础可以看菜鸟编程 BitArray 类管理一个紧凑型的位值数组,它使用布尔值来表示,其中 true 表示位是开启的(1),false 表示位是关闭的(0)。 当您...
    99+
    2022-11-13
  • 使用numpy实现矩阵的翻转与旋转
    使用numpy实现矩阵的翻转与旋转?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。numpy.flip(m, axis=None)Reverse the orde...
    99+
    2023-06-15
  • C/C++实现蛇形矩阵的示例代码
    目录题目描述题解部分完整代码菜鸡蒟蒻想在博客中记录一些算法学习的心得体会,会持续更新C/C++方面的题解,方便理清思路和日后复习。如果还能结识一起敲代码的小伙伴的话就更好啦嘿嘿,因为...
    99+
    2022-11-12
  • 使用numpy实现矩阵的翻转(flip)与旋转
    numpy.flip(m, axis=None) Reverse the order of elements in an array along the given axis. T...
    99+
    2022-11-12
  • C++实现重载矩阵的部分运算符
    目录前言正文运行结果前言 博主本人为C++菜鸟一只,本篇博客也是第一次写,主要目的用于自己mark,如有错误欢迎指出 本博客代码为我做C++实验时的代码,由于自己是菜鸟,所以代码内容...
    99+
    2022-11-13
    C++ 重载矩阵运算符 C++ 重载运算符 C++ 矩阵运算符
  • C++实现求动态矩阵各元素的和
    本文实例为大家分享了C++实现动态矩阵各元素的求和,供大家参考,具体内容如下 一、n阶方阵求和 功能:输入方阵维度,点击<Enter>,然后根据提示输入矩阵各阶元素,点击...
    99+
    2022-11-12
  • C/C++实现蛇形矩阵的示例代码怎么写
    这篇文章将为大家详细讲解有关C/C++实现蛇形矩阵的示例代码怎么写,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。菜鸡蒟蒻想在博客中记录一些算法学习的心得体会,会持续更新C/C++方面的题解,...
    99+
    2023-06-26
  • C++实现对象化的矩阵相乘小程序
    复习数学1的线性代数,矩阵相乘这块有点晕,想编个C++对象化的矩阵相乘小程序。 相乘部分 void sum(juzhen a, juzhen b, juzhen &c) ...
    99+
    2022-11-12
  • C++实现LeetCode(166.分数转循环小数)
    [LeetCode] 166.Fraction to Recurring Decimal 分数转循环小数 Given two integers representing the nu...
    99+
    2022-11-12
  • C++实现矩阵对称正交化的示例代码
    1.python代码 import numpy as np import pandas as pd df=pd.DataFrame() df['fac_01']=(34, 45,...
    99+
    2022-11-12
  • C++实现关系与关系矩阵的代码详解
    目录ADT集合关系关系矩阵功能实现关系的矩阵表示关系的性质判断关系的合成参考:ADT 集合 template<class Type> //集合的元素类型 class...
    99+
    2022-11-13
  • 纯c语言优雅地实现矩阵运算库的方法
    目录1.一个优雅好用的c语言库必须满足哪些条件2.实现一个矩阵运算库的几点思考(1)采用预定义的数据类型,避免直接使用编译器定义的数据类型(2)基于对象编程,定义矩阵对象(3)除了特...
    99+
    2022-11-12
  • C++使用cuBLAS加速矩阵乘法运算的实现代码
    本博客主要参考cuBLAS 库 词条实现,与原文不同的是,本博客: 将cuBLAS库的乘法运算进行了封装,方便了算法调用; 将原文的结果转置实现为了不转置,这样可以...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作