- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【数据结构】第5章 数组与广义表
第五章数组
西安电子科技大学·理学院
hjTang@xidian.edu.cn
数组的顺序存储
A11 A12 A13 A11 A12 A13 A11 A12 A13
A= A21 A22 A23 A21 A22 A23 A21 A22 A23
A31 A32 A33 A31 A32 A33 A31 A32 A33
以列序为主序的存储方式——MATLAB
A1 1, A21, A31; A12, A22, A32; A13, A23, A33
以行序为主序的存储方式——C
A 11, A12, A13; A21, A22, A23; A31, A32, A33
Data Structure Chapter 5: Matrix Generalized talbes 2
数组的定义
一维数组 a11 a12 … a1n
二维数组的解释 a21 a22 … a2n
二维数组与线性表 … … … ….
二维数组的一维数组表示 a a … a
m1 m2 mn
Typedef ElemType Array2[m][n];
Typedef ElemType Array1[n]; a
1
Typedef Array1 Array2[m];
a
Array2 a; 2
对多维数组的操作 …
a
维数、维界确定(不改变) m
除结构的初始化和销毁,数组只存取和修改元素值
Data Structure Chapter 5: Matrix Generalized talbes 3
#define N1 2
#define N2 3
#define N3 4
#define N4 5
typedef int DataType;
/* dim(a)是用于计算a的维数,不过只能计算数组的维数,不能计算指针的维数*/
#define dim(a) (sizeof(a)/sizeof(a[0]))
/* 定义一个一维数组,数组的元素维整型值 */
typedef DataType ARR1[N4];
/* 再定义一个一维数组,数组的元素维ARR1型,不过ARR1又是一个数组,所以
* ARR2 实际上是一个矩阵 */
typedef ARR1 ARR2[N3]; /* 此处完全等价为typedef int ARR2[N3][N4];*/
/* 按照ARR2 的解释,ARR3也是一个一维数组,不过数组元素的类型是ARR2 的类型
* 所有ARR3是一个三维数组 */
typedef AR
文档评论(0)