




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四 ))
))
))))))
a2n ...
((((
am
((((((数据元素一般不 、删除操ADTArrayji=0,...,bi-1,D={aj1,j2jn|n>0称为数组的维数bi是数组第i维的长度ji是数组元素第i维的下标,aj1,j2,...,jn属于R={R1,R2,...,Ri={<aj1,...ji,...jn,aj1,...ji+1, >0jkbk-11kn且k0jibi-2,i=2,...,n}ADT基本操作:InitArray(&An,bound1,操作结果nValue(A,&e,index1,...,随后是n个下标值。所指定的A的元素值,并返回Assign(&A,e,index1,...,随后是n所指定的A的元素,并返回OK数组的顺 结行列行列
m-m
定义
a
#define
#define
m*n-
数组顺 结构的实#defineMAX_ARRAY_DIMtypedef //数组元 int //int //数组维 int //常 //数组顺 结构的实Array 234282821
A[0][0][0]A[0][0][1]A[0][1][0]A[0][1][1]A[0][2][0]A[0][2][1]A[0][3][0]A[0][3][1]A[1][0][0]A[1][0][1]A[1][1][0]A[1][1][1]A[1][2][0]A[1][2][1]A[2][2][1]A[2][3][0]A[2][3][1]typedefintrow,typedefintrow,////数址Array_21 12414231A.base=(ElemType**)malloc(row*sizeof(ElemType*)13 3数组的基本操作在动态二维数组中的实StatusInitArray(Array_2&A,introw,int if(row<1||column<1)returnERROR;A.row=row; A.column=column;A.base=(ElemType**)malloc(row*sizeof(ElemType*));if(!A.base) exit(OVERFLOW);for(i=0;i<row; if(! exit(OVERFLOW}return}
StatusDestroyArray(Array_2{intfor(i=0;i<A.row; if(!A.base[i] returnfree(A.base[i]}if(!A.base)returnERROR;free(A.base);A.base=NULL;returnOK;}数组的基本操作在动态二维数组中的实StatusValue(Array_2A,ElemType&e,intr,int{if(r<1||returnERROR;if(c<1||r>A.column)returnERROR;e=A.base[r-1][c-return}
StatusLocate(Array_2A,ElemTypee,int&r,int{intfor(i=0;i<A.row;for(j=0;j<A.column;{{r=i+1;returnStatusAssign(Array_2A,{if(r<1||r>A.row)returnERROR;if(c<1||returnERROR;returnOK;}
m}mreturn}
对称矩 a22
n(n- n(n+1)/2-
2
三角矩
0 0
n(n- n(n+1)/2-
对角矩 a12 …………… 0 0 0…an-1,n- an-1,n- an- …an,n-
a32 ann-
n(n-
n(n+1)/2-矩阵的压 矩阵的压 假设m行n列的矩阵含t个非零元 0.05
M 0 M由{(1,2,121,3,93,1,-33,6,14(5,2,18(6,1,15(6,4,-7)}和矩阵维数(6,7)ADTSparseMatrixD={aij|i=1,2,…m;j=1,2,…n;aij 数R={Row,Row={<aij,aij+1>|1im,1jn-1}Col={<aij,ai+1j>|1im-1,1jn}ADT ddSMatrix(M,N,&Q) 操作结果:求稀疏矩阵M的转置矩阵稀疏矩阵的压 结#defineMAXSIZE100typedefstruct{inti,j; ElemTypee; //非零元的值Triple;typedefstructTripledata[MAXSIZE+1]; mu,nu,tu;}TSMatrix;稀疏矩阵的压 结行列下 非零元012301234567678121393136164
00 M 00
三元组表所 稀疏矩阵的压 结行逻 #defineMAXMNtypedefstructTripledata[MAXSIZE rpos[MAXMN // mu,nu, //稀疏矩阵 数与非零元个} //行逻 顺序表类稀疏矩阵的压 结行逻
01201234567
rpos[0]不用
7657653316012345
7823916782391640存矩阵
1 rpos[i]=rpos[i-1]+第i-1行非零元个数求稀疏矩阵的
a1n
a1m
a21
a2n
a2m
...
...
am
amn
an
anm0 2T 00000200100ijeije06780768212213-139316531-3681934146-64-63?57?57367将矩阵行 (M的列)为求稀疏矩阵的转置矩阵——按M的列序
算法演求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0234567870234567876813- 0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0 023 -234 456 567 78k8 0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0234567870234567876813-16212531934 0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0 023 -23456 45678 78 -k 0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0 023 -23456 45678 78 -k 0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0 023 -23456 45678 78 -
0000
M 求稀疏矩阵的转置矩阵——按M的列序 012012 4 45 578 78pp -
0 023 -23456 45678 78 - 0000
求稀疏矩阵的转置矩阵——按M的列序⚫StatusTransposeSMatrix(TSMatrixM,TSMatrix⚫{intcol,p, T.data[k].i
数互}return}
M.tu与M.muM.nureturn}
T(n)O(M.mu求稀疏矩阵的转置矩阵——快速即按M.data中三元组次序转置,转置结果放入T.data中恰当位置cpot[1]=1; (2col
0011234222135788900 0求稀疏矩阵的转置矩阵——快速
012012345 -78 78 -
0 023 -23456 45678 78 - 求稀疏矩阵的转置矩阵——快速StatusFastTransposeSMatrix(TSMatrixM,TSMatrix{intcol,t,T.mu=M.nu;T.nu=M.mu;T.tu=
数互if
无非零元,返 for(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(col=2;col<=M.nu;
num数组清求每列非零元cpot[col]=cpot[col-1]+num[col-for(p=1;p<=M.tu;{col= q=
计算每列第一个非零元下转转 指向本列下指向本列下一个非零元位}return return}
M.tu与M.muM.nuT(n)O(M.mu稀疏矩阵的压 结★引入稀疏矩阵链 的原因 稀疏矩阵,在单纯 和做类似转teefsttLode
itj;当进行矩阵相加等运算时,稀疏矩阵的非零元位置lTy;生变化。使用三元d会引起数组typedefstruct{RLink*r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025高校健康促进教育工作计划
- 商业零售行业安全管理职责与组织模式
- 纳米技术化妆品研发-全面剖析
- 糖尿病神经病变与免疫调节的交叉研究-全面剖析
- 存款协议书协定存款协议书二零二五年
- 二零二五兼职健身教练聘用合同
- 沙漠环境下的沟通技巧培训心得体会
- 夫妻儿女抚养权离婚协议二零二五年
- 空间互动与教育效能-全面剖析
- 经典演员聘用合同范例二零二五年
- 骨盆骨折治疗新进展
- 防范电信诈骗安全教育共建平安校园宣传课件
- DFMEA-磷酸铁锂电池案例
- GB/T 44625-2024动态响应同步调相机技术要求
- 网络销售食品监督抽检抽样指南
- 第七届江西省大学生金相技能大赛知识竞赛单选题题库附有答案
- 中医内科学全套课件
- 07J912-1变配电所建筑构造
- 沈阳市南昌初级中学2023-2024学年七年级下学期3月月考数学试题
- 2022-2023学年江苏省扬州市江都区仙女镇中心小学苏教版六年级下册期中测试数学试卷
- 周围神经减压术治疗糖尿病性周围神经病
评论
0/150
提交评论