操作与单链表基本一致-编程达人.PPTVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作与单链表基本一致-编程达人

1.循环链表 2.双向链表 昆山爱达人信息技术有限公司 QQ:254830010 本节内容 定义 将单链表中终端结点的指针端由空指针改为指向头结点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表,简称循环链表 特点 从表中任一结点出发均可找到表中其他结点,提高查找效率 为了使空表和非空表的处理一致,循环链表中也可以设置一个头结点。 昆山爱达人信息技术有限公司 QQ:254830010 循环链表 操作与单链表基本一致,循环条件不同 循环链表判断循环结束的条件是p-next等于头结点 单链表: p-next==null 循环链表: p-next==head 昆山爱达人信息技术有限公司 QQ:254830010 循环链表 head (a)循环链表的空表形式 head …        … (b)循环链表的一般形式 a0 a1 an-1  ai 尾指针 在循环链表中,除了头指针head外,有时还加了一个尾指针rear,尾指针rear指向最后一结点,从最后一个结点的指针又可立即找到链表的第一个结点。在实际应用中,使用尾指针代替头指针来进行某些操作,往往更简单。 例:将两个循环链表首尾相接。rearA为第一个循环链表表尾指针,rearB为第二个循环链表表尾指针。合并后rearB为新链表的尾指针。 Void merge(slnodetype * rearA,slnodetype * rearB) { slnodetype *p; p= rearB-next; rearB-next= rearA-next; rearA-next=p-next; free(p); } 昆山爱达人信息技术有限公司 QQ:254830010 循环链表 昆山爱达人信息技术有限公司 QQ:254830010 合并前 合并后 插入和删除操作 注意:最后一个元素的后继指针 演示 昆山爱达人信息技术有限公司 QQ:254830010 循环链表 定义 双向链表是在单链表的每个结点中,在设置一个指向其前驱结点的指针域 特点 构成链表的每个结点中有两个指针域:一个指向其直接前驱,一个指向直接后继。 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 结点p的前驱的后继还是自己 结点结构定义 typedef struct DulNode { ElemType data; // 数据域 struct DuLNode* prior; // 直接前驱 struct DuLNode* next; // 直接后继 } 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 插入操作 1.s-prior = p; 2.s-next = p-next; 3.p-next-prior = s; 4.p-next = s; 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 删除操作 1.p-prior-next = p-next; 2.p-next-prior = p- prior; 3.free(p); 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 应用 Windows和Linux操作系统大量应用双向链表 比如: 应用层PEB 昆山爱达人信息技术有限公司 QQ:254830010 双向链表 应用 Windows内核也大量采用这种链表: EProcess EThread 驱动对象 设备对象 等待对象 昆山爱达人信息技术有限公司 QQ:254830010 双向链表

文档评论(0)

zhuwo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档