- 3
- 0
- 约6.67千字
- 约 74页
- 2017-04-22 发布于河南
- 举报
[名校联盟]ch5 数组和广义表
第5章 数组和广义表(Arrays Lists);线性表——具有相同类型的数据元素的有限序列。;线性表——具有相同类型的数据元素的有限序列。;5.1 数组的定义; a11 a12 … a1n
a21 a22 … a2n
… … … …
am1 am2 … amn; a11 a12 … a1n
a21 a22 … a2n
… … … …
am1 am2 … amn;ADT Array {
数据对象:
D={aj1,j2, ...,,ji,jn| ji =0,...,bi -1, i=1,2,..,n }
数据关系:
R={R1, R2, ..., Rn}
Ri={aj1,... ji,... jn , aj1, ...ji +1, ...jn | 0 ? jk ? bk -1,
1 ? k ? n 且k ? i, 0 ? ji ? bi -2, i=2,...,n }
} ADT Array ;二维数组的定义:;基本操作:;Value(A, e, index1, ..., indexn);数组的基本操作;类型特点:
1) 只有引用型操作,没有加工型操作;
2) 数组是多维的结构,而存储空间是一个
一维的结构。;5.2 数组的顺序表示和实现—一维;常用的映射方法有两种:
按行优先:先行后列,先存储行号较小的元素,行号相同者先存储列号较小的元素。
按列优先:先列后行,先存储列号较小的元素,列号相同者先存储行号较小的元素。 ;l2;第l1行;Loc (j1, j2,… jn)=LOC(0,0,…0)+;“行序为主序” 即 “低下标优先”;例2:已知二维数组Am,m按行存储的元素地址公式是: Loc(aij)= Loc(a11)+[(i-1)*m+(j-1)]*K 按列存储的公式是?;例3:设数组a[1…60, 1…70]的基地址为2048,每个元素占2个存储单元,若以列序为主序顺序存储,则元素a[32,58]的存储地址为 。;#define MAX_ARRAY_DIM 8 //假设最大维数为8
typedef struct{
ELemType *base; //数组元素基址
int dim; //数组维数
int *bound; //数组各维长度信息保存区基址
int *constants; //数组映像函数常量的基址
}Array;; stdarg.h :利用宏va_start、va_arg和va_end提供
遍历未知数目和类型的函数参数表的功能。;Status InitArray (Array A, int dim,…)
{ //若维数dim和各维长度合法,则构造相应的数组A并返回OK
if (dim1||dimMAX_ARRAY_DIM) return ERROR;
A.dim=dim;
A.bounds=(int *)malloc(dim * sizeof(int));
if(!a.bounds) exit (OVERFLOW); // 分配存放“各维长度”的空间
//若各维长度合法,则存入A.bounds,并求出A的元素总数elemtotal
elemtotal=1;
va_start(ap, dim);
//ap为va_list类型,是存放变长参数表信息的类型,将ap指
向dim后的第一个参数; for(i=0;idim;++i)
{ A.bounds[i]=va_arg (ap, int);
// 返回ap当前指向的参数,并按参数类型将ap指向下一个参数
if (A.bounds[i]0) return UNDERFLOW;
elemtotal *=A.bounds[i];
}
va_end(ap); // ap使用完毕
A.base=(ElemType * )malloc(elemtotal * sizeof(ElemType));
if(!A.base) exit(OVERFLOW); // 分配数组元素空间
您可能关注的文档
- 4.2权力的行使:需要监督[公开课].ppt
- 护理质量工具的制作与应用[整理].ppt
- 2004-2011年全国各省市中考文言文真题汇编:《陋室铭》《爱莲说》[优质课].doc
- 世界秩序转型时期中国的对外政策-杨希雨[定稿].ppt
- 2016-2017学年高二鲁教版地理选修二海洋地理 4.1国际海洋秩序原创教案[修改版].doc
- 议论文阅读答题技巧[定稿].ppt
- 一个中国孩子的呼声(完美版)[最终版].ppt
- [整理]第21课《桃花源记》.ppt
- [整理]归去来兮辞9.ppt
- [名校联盟]高考背诵篇目.doc
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 交流转辙机道岔动作电流故障曲线分析信号集中监测课件.pptx VIP
- 2025届东北三省三校高三下学期第一次联合模拟考试政治试题(原卷版+解析版).docx VIP
- 养老服务质量检测90项.pdf VIP
- 光谱分析图谱与标志.docx
- 2025新课标中考英语词汇.pdf VIP
- T_CNPHARS 0001-2025 群体药动学药效学分析标准操作规范.pdf VIP
- (2026年)血浆置换及血浆分离吸附护理要点PPT课件.pptx VIP
- 农村狗狗交配的全过程,让你看了有点不可置信.pdf VIP
- 医院培训课件:《死亡医学证明(推断)书》规范填写及死因链基础知识.pptx VIP
- 健康体检表样表最新文档.docx VIP
原创力文档

文档评论(0)