三元组表示稀疏矩阵并相加
一、实验题目:
要求稀疏矩阵用三元组结构存储,实现矩阵A+B=C,并采用矩阵形式显示结果。
二、实验思路:定义两个结构体,Triple结构体用来存放每一个非零元素的信息(行标,列标,数值),Tripledata用来存放两个三元组矩阵的信息(行数,列数,非零元素的个数)。每一个三元组结构都需要调用这两个结构体,两个结构体共同组成一个稀疏矩阵的信息。定义两个二维数组将所有元素赋值为0,然后再在非零元素位置进行赋值操作,输出打印矩阵。最后用第三个数组存放前两个数组相加的结果。
三、流程图解析:主函数: 打印矩阵
矩阵相加
实验代码:
#include
#include
typedef struct threetuple{
int x;//表示非零元素的行标
int y;//表示非零元素的列标
int value;//表示非零元的值
}Triple;//用来存放三元组中每一个非零元素的信息
typedef struct infor
{
int col;//列数
int row;//行数
int counts;//存放非零元的个数
}Tripledata;//用来存放三元组矩阵的信息
void printtuple(Triple m[],Tripledata n,int A[n.col][n.row]);
void add_print(Tripledata n,int A[n.col][n.row],int B[n.col][n.row]);
int main()
{
Tripledata t[2];//定义两个信息结构体来存放矩阵信息
int i,j;
for(i=0;i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?