- 0
- 0
- 约6.3千字
- 约 8页
- 2018-05-02 发布于贵州
- 举报
实验五_数组9
实验5:数组
一、实验目的
深入研究数组的存储表示和实现技术,着重掌握对稀疏矩阵的表示方法及其运算的实现。
二、问题描述
稀疏矩阵是指那些多数元素为零的矩阵。利用‘稀疏’特点进行存储和计算可以大大节省存储空间,提高效率。通过对稀疏矩阵的存储表示,实现矩阵的基本操作。
三、实验要求
1、要求矩阵的输入形式采用三元组表示,以“带行逻辑链接信息”的三元组顺序表表示稀疏矩阵。
2、设计矩阵的逆置算法,实现矩阵的逆置。
3、实现两个稀疏矩阵的相加、相减和相乘等运算。
4、要求运算结果的矩阵则以通常的数组形式出现。
?四、实验环境
PC微机
DOS操作系统或 Windows 操作系统
Turbo C 程序集成环境或 Visual C++ 程序集成环境
?五、实验步骤
实验程序:
#include iostream
#include iomanip
using namespace std;
const int MAXSIZE=100;
const int MAXROW=10;
typedef struct {
int i,j;
int e;
}Triple;
typedef struct {
Triple data[MAXSIZE+1];
int mu,nu,tu;
}TSMatrix;
typedef struct {
Triple data[MAXSIZE+2];
int rpos[MAXROW+1];
int mu,nu,tu;
}RLSMatrix;
template class P
bool InPutTSMatrix(P T,int y){
cout输入矩阵的行,列和非零元素个数:endl;
cinT.muT.nuT.tu;
cout请输出非零元素的位置和值:endl;
int k=1;
for(;k=T.tu;k++)
cinT.data[k].iT.data[k].jT.data[k].e;
return true;
}
template class P
bool OutPutSMatrix(P T){
int m,n,k=1;
for(m=0;mT.mu;m++){
for(n=0;nT.nu;n++){
if((T.data[k].i-1)==m(T.data[k].j-1)==n){
cout.width(4);
coutT.data[k++].e;}
else{
cout.width(4); cout0; }
}
coutendl;
}
return true;
}
bool TransposeSMatrix( ){
TSMatrix M,T; //定义预转置的矩阵
InPutTSMatrix(M, 0); //输入矩阵
int num[MAXROW+1];
int cpot[MAXROW+1]; // 构建辅助数组
int q,p,t;
T.tu=M.tu; T.mu=M.nu; T.nu=M.mu;
if(T.tu){
for(int col=1;col=M.nu;col++) num[col]=0;
for(t=1;t=M.tu;t++) ++num[M.data[t].j];
cpot[1]=1;
for(int i=2;i=M.nu;i++) cpot[i]=cpot[i-1]+num[i-1]; // 求出每一列中非零元素在三元组中出现的位置
for(p=1;p=M.tu;p++){
col=M.data[p].j; q=cpot[col];
T.data[q].i=col; T.data[q].j=M.data[p].i;
T.data[q].e=M.data[p].e; ++cpot[col];
}
}
cout输入矩阵的转置矩阵为endl;
OutPutSMatrix(T);
return true;
}
bool Count(RLSMatrix T)
{
int num[MAXROW+1];
for(int col=1;col=T.mu;col++) num[col]=0;
for(col=1;col=T.tu;col++) ++num[T.data[col].i];
T.rpos[1]=1;
for(int i=2;i=T.mu;i++) T.rpos[i]=T.rpos[i-1]+num[i-1];
return true;
}
bool MultSMatrix ( ){
RLSMatrix M,N,Q;
InPutTSMatrix(M,1);
InPutTSMatrix(N,1);
Count(M); Count(N);
if(M
您可能关注的文档
- 宜人网-问题缩减5.doc
- 宜宾市高2011级政治调研考试试题__13年6月(高二)17.doc
- 宜宾五粮液股份有限公司 收购报告书摘要19.pdf
- 宝塔河小学五年级体育课《蹲距式起跑》25.ppt
- 宝宝100食谱3.doc
- 宜家(英文版介绍)40.ppt
- 宜春马自达保有客户分析3.ppt
- 宝宝2岁多了3.doc
- 宝宝6.7月食谱3.doc
- 完美公司2012最新NDO课件4.ppt
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测生物试卷+答案.doc
- 安徽省华师联盟2025-2026学年高三上学期1月质量检测语文试卷+答案.doc
- 四川省绵阳南山中学实验学校2025-2026学年高三上学期1月月考数学含答案.doc
- 2026届辽宁省大连市高三上学期双基考试物理试卷+答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测化学含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测生物含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测英语含答案.doc
- 辽宁名校联盟2026年1月高三上期末联考质量检测政治含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试化学含答案.doc
- 黑龙江省龙江教育联盟2026年1月高三上学期期末考试生物含答案.doc
最近下载
- 2025年北京第一次高中学业水平合格考物理试卷(含答案).pdf VIP
- 市政道路工程施工组织设计模版.doc VIP
- 15道公务员面试(国考)省级及以下机构重庆市网络信息类岗位面试问题考察点及参考回答.pdf VIP
- 跪拜土地阅读理解答案.docx VIP
- TAP检测项目介绍课件.ppt VIP
- 2025年综合类-心理治疗(师)-专业知识历年真题摘选带答案(5卷单选100题合辑).docx VIP
- 全国到地市矢量地图(很难找的资料)课件.pptx VIP
- 2025干部任前廉政知识考试题库及答案.pdf VIP
- 六年级上册期末道法知识点早读晚练小纸条.pdf VIP
- 质量管理小组活动推进指南(TCAQ10208-2024).docx
原创力文档

文档评论(0)