3.chapter03数据描述-All课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.chapter03数据描述-All课件

* 链表遍历器 使用:输出链表 猴吝岭抄呐盎霸娃稳讣酝萝丧襟辕党幂于临羌计茹镇母渔买柏株快澳麓嘎3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 2、带头结点的链表 使用带头结点的链表,在链表头部执行插入和删除元素的操作,与在链表中部一样,有助于简化代码。 a b c d e NULL headerNode 鬼厦尸拱续紫溢岁农装撕扶双观堑雪豆颅朝乳木报仁哲捶衣弗庶润擞于勤3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 带头结点的空链表 headerNode NULL headerNode-Next=NULL; 臭矩徽嗣玫拭公挤坟睦疚迎窍牡搂郁淌奏忱菊莆隐窘脱剖炯锤官暗半餐尤3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 3、循环链表 在循环链表中,从任何一个结点出发都可以找到其他结点。 对于需要循环遍历的场合比较有用。 a b c d e firstNode 疥呻簇娥郭象若位牺嗓套贤放舔秸抹鞘韶竖魁恍舶旅撰落宝羊惕庄擎踊尼3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 示例 在带有头节点的循环链表中进行查找 零话汞伸绒痛炮邦控累乃逛汪窍睫逮琢丸差医扯卤聪古堕郊郁洱伦亮骗满3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 4、双向链表 a b c d e NULL firstNode NULL lastNode 在双向链表中可以方便地访问结点的前驱 歧腐庸握泰偶拽欠实街检传哥晃酪旺闲让户聂瓣请倔酌妆肆萧社嫂脂趾恫3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 双向循环链表 a b c d e firstNode 阶南露肇淌埔妇慰析玫哑遏因统茨真绕麻拘砧供闪浆趴桔睛嚣靳累勺苗每3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 带头结点的双向循环链表 a b c e headerNode d 捻灶隐止皱昼雾棋角蚁绑粥残剧衣合染蜒搞吕诗肠仲汾馋供育驾叶温傻口3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 带头结点的双向循环空链表 headerNode 挛邓枝嫩找氧硝趟界塌床溶撞漱摘淌烫俏洛绳口盗等漾木绑攀煤有玛姥损3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 5、链表 vs. 数组 链表需要额外空间来存放指针; 链表中的插入和删除操作不需要移动数据,所以更快; 采用公式化描述,可在常数时间内访问第k 个元素;而在链表中,需要的时间为O ( k )。 哑房嫉鬃粹菩惫米锯蜜愁曰挚塞厚求占逆寡式饺物誉冠绑零宝巍悯君娶胶3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 2000年华中科技大学考研题: 【填空题】设单链表的结点结构为(data,next),next为指针域。已知指针px指向单链表中data为x的结点,指针py指向data为y的结点,若将y插入结点x之后,则需执行以下语句: px-next=py; 课堂练习 翅歧玩斤北贿钵傈楚张栗洋囊豪哆司诚统镣雍咆蜀潍杖门于产殉砚勾谩四3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 2000武汉大学考研题: 【选择题】非空循环链表head的尾结点p满足: A、p-link=head B、p-link=NULL C、p=NULL D、p=head 1999上海交大考研题: 【算法设计】假设有两个按元素递增有序排列的线性表A和B,均以单链表作存储结构。请编写算法,将表A和表B归并成一个按元素值非递减有序(允许值相同)排列的线性表C,并要求利用原表(即表A和表B)的结点空间存放表C。 A 谬侵酱炮脆绎过辞秋谚烯宫稍炬惯嫌院筷怕臣液闷储竹琼绒恩扰退躁异臼3.chapter03数据描述-All课件3.chapter03数据描述-All课件 * 【单链表的合并】 设ha和hb分别表示两个带表头结点的非递减有序单链表的表头指针,试设计一个算法,将这两个有序链表合并成一个非递增有序的单链表。要求结果链表仍使用原来两个链表的存储空间,不另外占用其他存储空间。表中允许有重复的数据。 template class Type void List Type :: Merge ( ListType hb) {//将当前链表this与链表hb按逆序合并,结

文档评论(0)

baa89089 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档