- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 数组;4.2 数组的顺序存储结构
次序约定
以行序为主序
以列序为主序;定义一A[2][3]数组,对应的矩阵如下:
数组元素A[1][2],其下标i=1,j=2,故它前面已经有i=1行,每行有3个元素,另外本行有j=2个元素,所以在元素A[1][2]之前,本数组已有5个元素。 ;三角矩阵;M由{(1,2,12), (1,3,9), (3,1,-3), (3,6,14), (4,3,24),
(5,2,18), (6,1,15), (6,4,-7) } 和矩阵维数(6,7)唯一确定;稀疏矩阵的压缩存储方法
顺序存储结构
三元组表;带辅助行向量的二元组表;伪地址表示法;链式存储结构
带行指针向量的单链表表示
每行的非零元用一个单链表存放
设置一个行指针数组,指向本行第一个非零元结点;若本行无非零元,则指针为空
表头结点与单链表结点类型定义;十字链表
设行指针数组和列指针数组,分别指向每行、列第一个非零元
结点定义;从键盘接收信息建立十字链表算法;4;4.3 广义??? ;2.广义表举例 ;3.广义表的表示方法 ;(3) 将广义表用树和图来描述 ;4.广义表的深度 ;这四种表的关系满足:
递归表?再入表? 纯表 ? 线性表
;练习:结构描述广义表A=(x,(a,b)) B=(A,y)C=(A,B)=((x,(a,b)),((x,(a,b)),y)) ,设头指针为hc。 ;4.取表头运算head ; 习题:
一、选择题
1.设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为( )。
A. 13 B. 33 C. 18 D. 40
2. 有一个二维数组A[1:6,0:7] 每个数组元素用相邻的6个字节存储,存储器按字节编址,那么这个数组的体积是(①)个字节。假设存储数组元素A[1,0]的第一个字节的地址是0,则存储数组A的最后一个元素的第一个字节的地址是(②)。若按行存储,则A[2,4]的第一个字节的地址是(③)。若按列存储,则A[5,7]的第一个字节的地址是(④)。就一般情况而言,当(⑤)时,按行存储的A[I,J]地址与按列存储的A[J,I]地址相等。供选择的答案:
①-④: A.12 B. 66 C. 72 D. 96 E. 114 F. 120
G. 156 H. 234 I. 276 J. 282 K. 283 L. 288
⑤: A.行与列的上界相同 B. 行与列的下界相同
C. 行与列的上、下界都相同 D. 行的元素个数与列的元素个数相同
3.若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定aij(ij)的位置k的关系为( )。
A. i*(i-1)/2+j B. j*(j-1)/2+i C. i*(i+1)/2+j D. j*(j+1)/2+i
;4. 对稀疏矩阵进行压缩存储目的是( )
A.便于进行矩阵运算 B.便于输入和输出 C.节省存储空间 D.降低运算的时间复杂度
5. 已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是( )。
A. head(tail(tail(L))) B. tail(head(head(tail(L))))
C. head(tail(head(tail(L))))
D. head(tail(head(tail(tail(L)))))
6. 已知广义表LS=((a,b,c),(d,e,f)),运用head和tail函数取出LS中原子e的运算是( )。
A. head(tail(LS)) B. tail(head(LS))
C. head(tail(head(tail(LS))) D. head(tail(tail(head(LS))))
7. 广义表A=(a,b,(c,d),(e,(f,g))),则下面式子的值为( )
Head(Tail(Head(Tail(Tail(A)))))
A. (g) B. (d) C. c D. d
8. 已知广义表: A=
文档评论(0)