首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。 [说明] 若一个矩阵中的非零元素数目很少且分布没有规律,则称之为稀疏矩阵。对m行n列的稀疏矩阵M,进行转置运算后得到n行m列的矩阵MT,如图3-1所示 为了压缩稀疏矩阵的
阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。 [说明] 若一个矩阵中的非零元素数目很少且分布没有规律,则称之为稀疏矩阵。对m行n列的稀疏矩阵M,进行转置运算后得到n行m列的矩阵MT,如图3-1所示 为了压缩稀疏矩阵的
admin
2010-01-15
34
问题
阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。
[说明]
若一个矩阵中的非零元素数目很少且分布没有规律,则称之为稀疏矩阵。对m行n列的稀疏矩阵M,进行转置运算后得到n行m列的矩阵MT,如图3-1所示
为了压缩稀疏矩阵的存储空间,用三元组(即元素所在的行号、列号和元素值、表示稀疏矩阵中的一个非零元素,再用一维数组逐行存储稀疏矩阵中的所有非零元素也称为三元组顺序表)。例如,图3-1所示的矩阵M相应的三元组顺序表如表3-1所示。其转置矩阵MT的三元组顺序表如表3-2所示。
函数TransposeMatrix(Matrix M)的功能是对用三元组顺序表表示的稀疏矩阵M进行转置运算。
对M实施转置运算时,为了将M中的每个非零元素直接存入其转置矩阵MT三元组顺序表的相应位置,需先计算M中每一列非零元素的数目(即MT中每一行非零元素的数目),并记录在向量num中;然后根据以下关系,计算出矩阵M中每列的第一个非零元素在转置矩阵MT三元组顺序表中的位置:
cpot[0]=0
cpot[j]=cpot[j-1]+num[j-1]) /*j为列号*/
类型ElemType,Triple和Matrix定义如下:
typedef int ElemType;
typedef struct{ /*三元组类型*/
int r,c; /*矩阵元素的行号、列号*/
ElemType e; /*矩阵元素的值*/
}Triple;
typedef struct{ /*矩阵的元组三元组顺序表存储结构*/
int rows,cols,elements; /*矩阵的行数、列数和非零元素数目*/
Triple data[MAXSIZE];
}Matrix;
[C语言函数]
int TransposeMatrix(Matrix M)
{
int j,q,t;
int *num, *cpot;
Matrix MT; /*MT是M的转置矩阵*/
num=(int*)malloc(M.cols*sizeof(int));
cpot=(int*)malloc(M.cols*sizeof(int));
if(!num ||cpot)
return ERROR;
MT.rows=(1); /*设置转置矩阵MT行数、列数和非零元素数目*/
MT.cols=(2);
MT.elements=M.elements;
if(M.elements>0){
for (q=0 ; q<M. cols ; q++)
num[q]=0;
for (t=0; t<M.elements;++t) /*计算矩阵M中每一列非零元素数目*/
num [M.data[t].c]++;
/*计算矩阵M中每列第一个非零元素在其转置矩阵三元组顺序表中的位置*/
(3);
for(j=1;j<M.cols;j++)
cpot[j]=(4);
/*以下代码完成转置矩阵MT三元组顺序表元素的设置*/
for(t=0;t<M.elements;t++){
j=(5); /*取矩阵M的一个非零元素的列号存入j*/
/*q为该非零元素在转置矩阵MT三元组顺序表中的位置(下标)*/
q=cpot[j];
MT.data[q].r=M.data[t].c;
MT.data[q].c=M.data[t].r;
MT.data[q].e=M.data[t].e;
++cpot[j]; /*计算M中第j列的下一个非零元素的目的位置*/
}/*for*/
} /*if*/
free(num); free(cpot);
/*此处输出矩阵元素,代码省略*/
return OK;
}/*TransposeMatrix*/
选项
答案
(1)M.cols;(2)M.rows;(3)cpot[0]=0;(4)cpot[j-1]+num[j-1];(5)M.data[t].c
解析
转载请注明原文地址:https://kaotiyun.com/show/EBjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
《数据中心设计规范》GB50174-2017属于()。
在用Word编辑文本时,为了使文字绕着插入的图片排列,下列操作正确的是______。
在Word2007文档中查找所有的“广西”“广东”,可在查找内容中输入______,再陆续检查处理。
某互联网公司建立的用户画像(标签化的用户信息)包括人口属性和行为特征两大类,()属于行为特征。
在用Word软件编辑文档时,若误删除了一个数据,随后可使用______命令进行恢复。
某PowerPo血文档共有10张幻灯片,先选中第6张幻灯片,再改变背景设置,单击“全部应用”命令后,则第________张幻灯片的背景被改变。
收集数据时,设计调查的问题很重要。此时,需要注意的原则不包括(8)。
某公司下设4个分公司A、B、C、D,上月各分公司的销售额及其在总公司所占比例如下表所示。由于此表单受潮,有些数据看不清了,但还可以推算出来。根据推算, D公司上月的销售额为(68)万元。
为了测量航天员每分钟的心跳次数,甲建议测量2分钟的心跳次数再除以2,乙建议测量10秒钟的心跳次数再乘以6,两者相比______。
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。说明在一台计算机上安装完成Windows2000服务器及相应的服务组件。
随机试题
福明公司为在上海证券交易所主板挂牌的上市公司。2018年1月25日,福明公司实际控制人、董事长李某根据公司2017年度业绩情况,向董事会秘书赵某提出在当期实施股票“高送转”的利润分配动议。赵某起草了《高送转预期利润分配预案》等文件提交董事会审议,但由于董事
Thissoftwarecanbe______totheneedsofeachcustomer.
若某企业的速动比率为2,流动负债为160万元,存货200万元,则相应的流动比率为()。
甲施工企业授权某采购员到乙公司采购钢材,但该采购员用盖有甲施工企业公章的空白合同文本,与乙公司订立了购买水泥的合同,则该合同( )。
某建筑高度为39m住宅,共2个单元,地上一至二层为商业服务网点,对该住宅楼的下列防火检查结果中,不符合现行国家标准要求的是()。
下列实验装置或操作能达到实验目的的是()。
古人写诗“二句三年得,一吟双泪流”;写小说,动辄“闭门谢客,披阅十载”。现在许多作家每年出好几部长篇,几十万字,个把月就写成了。没有对生活的日积月累,没有对人生的深思熟虑,没有对写作的精心布局,没有对文字的字斟句酌、反复修改,怎么会有精品?又怎能抵抗时间的
下列关于WindowsServer2003系统下DNS服务器参数的描述中,错误的是()。
数据库设计分为以下6个设计阶段:需求解析阶段、【】、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。
WhatwassaltusedtodoinEgyptthousandsofyearsago?
最新回复
(
0
)