- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.3.4 双向循环链表 在循环链表中,访问结点的特点: 访问后继结点,只需要向后走一步,而访问前驱结点,就需要转一圈。 结论:循环链表并不适用于经常访问前驱结点的情况。 解决方法:在需要频繁地同时访问前驱和后继结点的时候,使用双向链表。所谓双向链表。 双向链表就是每个结点有两个指针域。一个指向后继结点,另一个指向前驱结点。 * 图 循环双向链表 head prior data next (a) (b) * 类型定义—— typedef struct dlnode { Elemtype data; struct dlnode *prior, *next; } DLinkList; 用C语言实现双向循环链表 * 图 2-9 p s 在一个结点前插入一个新结点 * s-prior=p-prior; p-prior-next=s; s-next=p; p-prior=s; 使用下列核心语句: * 双向链表中结点的删除 ② P ① * p-prior-next=p-next; p-next-prior=p-prior; free(p); 使用下列核心语句: * 2.4 一元多项式的表示和相加 S(X) = 7 + 12X3 - 2X8 + 5X12 P41,图2.17两个多项式相加 * 2.4 顺序表和链表的比较 基于空间 基于时间 基于语言 顺序表 静态 存储密度大 利于查询 都支持 链表 动态 存储密度小 利于删除、插入 都支持 * 小结: 线性表逻辑结构 线性表操作 线性表物理结构(顺序和链式) 实验一:线性表 初始化 删除D、插入I、长度L、查询S 单链表实现 * 对书架上的书信息管理 书的描述结构 { 书 名 作 者 出版社 出版日期 价 格 } * 习 题 二 1 简述下列术语:线性表,顺序表,链表。 2 何时选用顺序表,何时选用链表作为线性表的存储结构合适?各自的主要优缺点是什么? 3 在顺序表中插入和删除一个结点平均需要移动多少个结点?具体的移动次数取决于哪两个因素? 4 链表所表示的元素是否有序?如有序,则有序性体现于何处?链表所表示的元素是否一定要在物理上是相邻的?有序表的有序性又如何理解? 5 设顺序表L是递增有序表,试写一算法,将x插入到L中并使L仍是递增有序表。 * 6 写一求单链表的结点数目ListLength(L)的算法。 7 写一算法将单链表中值重复的结点删除,使所得的结果链表中所有结点的值均不相同。 8 写一算法从一给定的向量A删除值在x到y(x≤y)之间的所有元素(注意:x和y是给定的参数,可以和表中的元素相同,也可以不同)。 9 设A和B是两个按元素值递增有序的单链表,写一算法将A和B归并为按按元素值递减有序的单链表C,试分析算法的时间复杂度。 * * * 第2章 线性表 马伟锋( Wei-feng MA) 信息与电子工程学院 School of Information and Electronic Engineering 105012@zust.edu.cn * 2.1 线性表的逻辑结构 2.2 线性表的顺序存储结构 2.3 线性表的链式存储结构 2.4 线性表的应用举例 目标:掌握线性表的特性和实现方法,并能 够利用线性表解决简单的应用问题。 教学安排 * 2.1 线性表的逻辑结构 2.1.1 线性表的定义 线性表是由n(n≥0)个类型相同的数据元素组成的有限序列。通常表示成下列形式: L=( a1, a2,...,ai-1,ai,ai+1,...,an) 其中:L为线性表名称,习惯用大写书写; ai为组成该线性表的数据元素,习惯用小写书写; 线性表中数据元素的个数被称为线性表的长度,当n=0时,线性表为空,又称为空线性表。 * La=(34,89,765,12,90,-34,22) 数据元素类型为int。 Ls=(?Hello?,?World?, ?China?, ?Welcome?) 数据元素类型为string。 Lb
您可能关注的文档
最近下载
- 三一SY235C9I2KS维护保养手册.pdf VIP
- 纪念中国人民抗日战争暨世界反法西斯战争胜利80周年PPT课件.pptx VIP
- 陶瓷原料及配方基础.ppt VIP
- 茶小绿叶蝉的防治课件.pptx VIP
- 电梯制造与安装安全规范 GB7588-2003.docx VIP
- 2023民航特种车辆操作工民航特种车辆操作工试卷(练习题库).docx VIP
- IEC 60840-2004 额定电压30kV(Um=36kV)以上至150kV(Um=170kV)挤包绝缘电力电缆及其附件试验方法和要求(中文).pdf VIP
- 22G101 三维彩色立体图集.docx VIP
- 混凝土混凝土.ppt VIP
- 沈萍微生物课件第3章b.ppt VIP
文档评论(0)