数据结构(17):行逻辑链接存储稀疏矩阵

本文介绍了数据结构中稀疏矩阵的存储方式,重点讲解了行逻辑链接存储的概念,并提供了相应的程序代码实现。通过运行结果展示了该存储方法如何有效管理稀疏矩阵。
摘要由CSDN通过智能技术生成

行逻辑链接示意图:
在这里插入图片描述

程序代码:

//行逻辑联接的顺序表
#include<stdio.h>
#define MAXSIZE 12500
#define MAXMN 500
#define ElemType int
#define Status int
#define OK 1
#define ERROR 0
typedef struct{
   
	int i, j;//该非零元的行下标和列下标
	ElemType e;// 该非零元的值
}Triple;// 三元组类型

typedef struct{
   
	Triple data[MAXSIZE + 1];
	int rpos[MAXMN + 1];
	int mu, nu, tu;
}RLSMatrix;// 行逻辑链接顺序表类型

void CreateSMatrix(RLSMatrix *M){
   
	printf("请输入矩阵的行数,列数,非零元个数\n");
	scanf("%d%d%d", &M->mu, &M->nu, &M->tu);
	if (M->tu>M->mu*M->nu)
	{
   
		printf("非法矩阵,请重新输入!\n");
		CreateSMatrix(M);
	}
	printf("请输入非零元所在的行列及其数值:\n");
	for (int k = 1; k <= M->tu; k++)
	{
   
		scanf("%d%d%d", &M->data[k].i, &M->data[k].j, &M->data[k].e);
		if (M->data[k].i<1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值