数组数据结构严蔚敏学习教案.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数组数据结构严蔚敏学习教案.pptx》由会员分享,可在线阅读,更多相关《数组数据结构严蔚敏学习教案.pptx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数组数据结构数组数据结构(sh j ji u)严蔚敏严蔚敏第一页,共24页。数组的ADT定义(dngy)ADTArray数据对象:数据对象:ji=0,bi-1,i=1,2,nD=aj1j2jn|n称为数组的维数称为数组的维数,bi是数组第是数组第i维的长度维的长度,ji是数组元素的第是数组元素的第i维下标,维下标,aj1j2jnElemSetR=R1,R2,Rn/每个元素受到每个元素受到n个关系的约束个关系的约束Ri=|0jkbk-1,1kn且且ki0jibi-2,aj1jijn,aj1,ji+1jnD,i=2,nP:InitArray(&A,n,bound1,boundn)DestoryAr
2、ray(&A)Value(A,&e,index1,indexn)/取出元素值取出元素值Assign(&A,e,index1,indexn)/给元素赋值给元素赋值ADTArray第1页/共24页第二页,共24页。数组的ADT定义(dngy)n n维数组中含有维数组中含有 个数据元素个数据元素(yun s)(yun s),每个元素,每个元素(yun(yun s)s)受到受到n n个关系的约束,且这个关系的约束,且这n n个关系都是线性关系。当个关系都是线性关系。当n=1n=1时,时,n n维数组就退化为定长的线性表。反之,维数组就退化为定长的线性表。反之,n n维数组也可以维数组也可以看成是线性表
3、的推广看成是线性表的推广数组中的每个元素数组中的每个元素(yun s)(yun s)都对应于一组下标都对应于一组下标(j1,jk)(j1,jk),每,每个下表的取值范围是个下表的取值范围是0 ji bi-1,bi0 ji bi-1,bi称为第称为第i i维的长度维的长度数组一旦被定义,它的维数和维界就不再改变数组一旦被定义,它的维数和维界就不再改变数组结构操作数组结构操作初始化、销毁、元素初始化、销毁、元素(yun s)(yun s)的存取和修改的存取和修改不过,数组多用于静态数据处理,一般不作插入和删除操作不过,数组多用于静态数据处理,一般不作插入和删除操作第2页/共24页第三页,共24页。
4、数组特点(tdin)l l数组中各元素都具有统一的类型数组中各元素都具有统一的类型l ld d维数组的非边界元素具有维数组的非边界元素具有d d个直接前趋和个直接前趋和d d个直接后继个直接后继(huj)(huj)数组维数组维数确定后,数据元素个数和元素之间的关系不再发生改变,适合于顺数确定后,数据元素个数和元素之间的关系不再发生改变,适合于顺序存储序存储l l每组有定义的下标都存在一个与其相对应的值每组有定义的下标都存在一个与其相对应的值第3页/共24页第四页,共24页。数组的顺序(shnx)表示数组通常采用顺序存储方式来实现数组通常采用顺序存储方式来实现n n维数组的数据维数组的数据(sh
5、j)(shj)元素的存储问题元素的存储问题必须约定存放次序必须约定存放次序因为存储单元是一维的,而数组是多维的因为存储单元是一维的,而数组是多维的存储方案存储方案以行序为主序,如以行序为主序,如C,Pascal,BasicC,Pascal,Basic等语言采用等语言采用以列序为主序,如以列序为主序,如FortranFortran语言采用语言采用数组一旦定义了维数和各维长度,便可为其分配存储空数组一旦定义了维数和各维长度,便可为其分配存储空间间只要给出一组下标便可求得相应元素的存储位置只要给出一组下标便可求得相应元素的存储位置a11a12.a1na21a22.a2nam1am2.amn.Loc(
6、aij)=Loc(a11)+(i-1)n+(j-1)*l按行序为主序存放按行序为主序存放 amn .am2 am1 .a2n .a22 a21 a1n .a12 a1101n-1m*n-1n按列序为主序存放按列序为主序存放01m-1m*n-1m amn .a2n a1n .am2 .a22 a12 am1 .a21 a11a11a12.a1na21a22.a2nam1am2.amn.Loc(aij)=Loc(a11)+(j-1)m+(i-1)*l第4页/共24页第五页,共24页。数据元素的存储(cn ch)问题一维数组为例如 int Ab1,共占用b1个整型存储单元给定下标值i,求对应元素(y
7、un s)的存储位置Loc(i)=Loc(0)+i*L数组数组基址基址(j zh)元素所占存储单元素所占存储单元大小元大小ALoc(0)01ib1-1LA0A1AiAb1-1第5页/共24页第六页,共24页。数据(shj)元素的存储问题二维数组为例如 int Ab1,b2,共占用b1*b2个整型存储(cn ch)单元如 行序为主序的存储(cn ch)方式(图a)给定下标值i,j,求对应元素的存储(cn ch)位置Loc(i,j)=Loc(0,0)+(b2*i+j)*LALoc(0,0)A0,0A0,1A0,b2-1A1,0A1,1A1,b2-1Ab1-1,0Ab1-1,1Ab1-1,b2-1第
8、6页/共24页第七页,共24页。n n维数组为例维数组为例如如 int Ab1,b2,bn,int Ab1,b2,bn,共占用共占用b1*b2*bnb1*b2*bn个整型存储单个整型存储单元元行序为主序的存储方式行序为主序的存储方式(fngsh)(fngsh)给定下标值给定下标值j1,j2,jn,j1,j2,jn,求对应元素的存储位置求对应元素的存储位置 Loc(j1,j2,jn)=Loc(0,0,0)+L*Loc(j1,j2,jn)=Loc(0,0,0)+L*(b2*.*bn*j1+(b2*.*bn*j1+b3*bn*j2+b3*bn*j2+bn*jn-1+bn*jn-1+jn)jn)考虑考
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 数据结构 严蔚敏 学习 教案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内