




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、动态数据结构第1页,共13页,2022年,5月20日,15点11分,星期一指 针1、引入指针类型的必要性(静态数据结构的弊端)(1)pascal系统为属于静态数据结构的变量提供了64KB的静态数据区,用户需求不能超出该存储空间。(2)静态数据结构的变量一经定义,pascal系统将自动为它们在静态数据区分配内存。在程序执行过程中,这些变量所占的存储空间大小固定不变,极有可能产生无谓的浪费。(3)在静态的数据序列中,增加或删除一个元素必须经过大量的数据移动才能实现。第2页,共13页,2022年,5月20日,15点11分,星期一指 针2、指针类型的定义格式Typepointer=数据基类型;Varp
2、:pointer;Varp: 数据基类型;数据基类型是指针所指向的存储单元存放的数据类型第3页,共13页,2022年,5月20日,15点11分,星期一指 针3、指针变量的引用Varptr1,ptr2: integer;i,t:integer;Begini:=10; ptr1:=i; t:=ptr1;ptr2:=20; ptr1:=ptr2;ptr1:=ptr2;End.ptr110i10t10ptr22020第4页,共13页,2022年,5月20日,15点11分,星期一指 针4、动态变量的生成和释放(1)生成动态变量New(指针变量)例:new(p)p一个指针变量只能存放一个地址,再次执行ne
3、w(p)语句,生成新单元,丢失原单元。功能:生成一个类型为指针基类型的存储单元,并将此存储单元的地址赋给指针变量。第5页,共13页,2022年,5月20日,15点11分,星期一指 针4、动态变量的生成和释放例:dispose(p)p功能:释放指针变量所指的存储单元,并使指针变量的值取nil。(2)释放动态变量dispose(指针变量)nilnil表示指针暂不指向任何变量。第6页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构(1)每个框表示链表的一个元素结点。(2)每个结点包含两个域:一个放数据,为数据域;另一个存放后继结点的地址,为后继指针域。(3)链表的第一个结点
4、称为表头,指向表头的指针head称为头指针,头指针为nil时,链表为空链表。(4)表尾结点的后继指针域的值为nil。headnil第7页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构1、单链表的定义结点数据域后继指针域记录类型Typepointer=element;element=record data:integer; next:pointer; end;Varp:pointer;ppdatanextp.datap.nextp.next第8页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构2、建立链表ppheadNew (p);If n=
5、1 then head:=p else q.next:=p;q:=p;p:指向新建结点 q:指向当前结点q循环第9页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构2、建立链表定义一个建立有n个结点的链表的过程。Procedure creat(var head:pointer;var n:integer);BeginHead:=nil; i:=0;While (in) doBeginNew(p);i:=i+1; read(p.data);If i=1 then head:=p else q.next:=p;q:=p;End;If headnil then q.next:=nil;Dispose(p);End.第10页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构3、链表结点的插入pNew (p);Read(p.data);p.next:=q.next;q.next:=p;q第11页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构4、链表结点的删除q.next:=p.next;dispose(p);qp第12页,共13页,2022年,5月20日,15点11分,星期一指针的应用链表结构练习利用随机函数建立一个具有50个结点的链表,每个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陕西国际商贸学院《项目管理全景模拟》2023-2024学年第二学期期末试卷
- 陕西工业职业技术学院《货运和商务管理》2023-2024学年第二学期期末试卷
- SCI论文写作与投稿 第2版-课件 13-SCI论文数学式使用
- 陕西省咸阳市杨陵区2025年小升初全真数学模拟预测卷含解析
- 陕西省商洛中学2025届高三5月适应性考试生物试题含解析
- 陕西省宝鸡市岐山县重点名校2025届初三下学期高中毕业班3月质检物理试题试卷含解析
- 陕西省延安市实验中学2025年高考历史试题倒计时模拟卷(7)含解析
- 公共经济学课程串讲
- 陕西省西安市临潼区重点名校2024-2025学年初三下学期第一次诊断考试物理试题含解析
- 陕西职业技术学院《传统运动养生学》2023-2024学年第二学期期末试卷
- 2025道德讲堂课件
- 学生心理健康一生一策档案表
- 2025年湖北职业技术学院单招职业技能考试题库汇编
- 2025年上半年绵竹市九绵产业投资限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 国家义务教育质量监测八年级美术样卷
- 2025年广东省广州市海珠区官洲街雇员招聘5人历年自考难、易点模拟试卷(共500题附带答案详解)
- 滑坡地质灾害治理工程资源需求与保障措施
- 中央戏剧学院招聘考试真题2024
- 专题07力、运动和-5年(2020-2024)中考1年模拟物理真题分类汇编(天津专用)(带答案解析)
- 浙江省温州市2024年九年级学生学科素养检测中考一模数学试卷(含答案)
- 2025年春人教版英语七年级下册 Unit 3 Keep Fit(教学设计)
评论
0/150
提交评论