没有合适的资源?快使用搜索试试~ 我知道了~
首页基于十字链表存储的稀疏矩阵的转置
基于十字链表存储的稀疏矩阵的转置
需积分: 50 1.5k 浏览量
更新于2023-05-30
评论 4
收藏 21KB DOCX 举报
实现了从字符文件读入三个正整数m, n, t以及t个三元组(i, j, e)建立稀疏矩阵的十字链表存储结构(m、n分别表示矩阵行数和列数;i, j为非零元素行号和列号)和十字链表的转置并将转置后的三元组到另一字符文件中
资源详情
资源评论
资源推荐

//创建十字链表的数据是从文件中读取的故加上了文件读写
#include <iostream>
#include <iomanip>
#include <cstdlib>
using namespace std;
typedef int ElemTP;
typedef struct node {
int i, j;
ElemTP e;
struct node *right, *down;
}OLNode;
void ReadFromFile(OLNode &s, int &num);//从文件中读取三元组并建立三元表
int InitOLNode(OLNode &s, int m, int n);//初始化十字链表
int InsertInOLNode(OLNode &s, int i, int j, ElemTP e);//往十字链表中添加元素
void PrintOLLode(OLNode &s);//输出十字链表
void swap(int &i, int &j);//交换两个数据的值
void Transposition(OLNode &s);//十字链表的转置
void WriteInFile(OLNode &s, int num);//将十字链表写入另一个文件
int main()
{
OLNode s;
int num;
ReadFromFile(s, num);
cout << "十字链表输出为:" << endl;
PrintOLLode(s);
Transposition(s);
cout << "十字链表转置输出为:" << endl;
PrintOLLode(s);
WriteInFile(s, num);
system("pause");
return 0;
}


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0