DS考研编.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2 * 1、将a1,a2,a3,a4,a5,a6......,调整为a1,a3,a5,......, a6,a4,a2,即将偶数号结点a2,a4,a6......逆置,并放在奇数号结点后,O(n)完成。 template class T class DoubleList; template class T class DNode { private: T data; DNodeT *llink, *rlink; friend class DoubleListT; }; template class T class DoubleList { private: DNodeT* head; int n; public: DoubleList(); ~DoubleList(); void Ex1(); }; 磋香唇摇拦鲸廷陌针人茧酗节减踢倾赖腺煤恳磷窥脚亮玄国玩纸怔拘做荤DS考研编程DS考研编程 算法思想: 从双链表中依次取出偶数号的结点,插入到头结点head1、尾结点tail1的双链表中(每次都是将取下的结点插入到head1之前),最后将head1链表插入到head链表的尾结点。 a1 a2 an … … head a1 a3 a2 … … head p q 诉搜滚兽廓颁莉您饵炽累诌雇试泽盼惠哼眺傣截跑透鸳燎舰幼溅刷鸿韩鸵DS考研编程DS考研编程 1、取下偶数号结点q; 2、将q插入到head1前; 3、重复1和2,直到没有偶数结点; 4、 将head1插入到head的尾结点之后。 计算取下的偶数号结点的个数k=n/2 (确定循环次数); for(i=0; ik; i++) { 取下偶数号结点q; 将q插入到head1前; } 将head1插入到head的尾结点之后; 陌抓轰肥聪剿觉念冠饶二肛堡华霜蛙霓袱镍陈崇蒲沼剩奋蹈源窖智岸哩微DS考研编程DS考研编程 k=n/2 (确定循环次数); for(i=0; ik; i++) { 取下偶数号结点q; 将q插入到head1前; } 将head1插入到head的尾结点之后; 初始化p、q;(p指向a1,并且是q的直接前驱结点) k=n/2 ; for(i=0; ik; i++) { 取下偶数号结点q; 将q插入到head1前; 重置p、q; } 将head1插入到head的尾结点之后; 外浙宋技墓磺玲氏竞豫障探坚唱则铡籽味躯戒捡剔赠澈脱爷躲哺宗馈蓝具DS考研编程DS考研编程 初始化p、q;(p指向a1,并且是q的直接前驱结点) k=n/2 ; for(i=0; ik; i++) { 取下偶数号结点q; 将q插入到head1前; 重置p、q; } 将head1插入到head的尾结点之后; 如果表长不足3,则返回; 郊吏陨云粘桐桅棵褥酒族鸦醚郭趴缉忙价牟揪忍更贮螟亥抠尹手颅榔符役DS考研编程DS考研编程 如果表长不足3,则返回; 初始化p、q;(p指向a1,并且是q的直接前驱结点) 计算取下的偶数号结点的个数k(确定循环次数); for(i=0; ik; i++) { 取下偶数号结点q; 将q插入到head1前; 重置p、q; } 将head1插入到head的尾结点之后; 如果head1是空,则head1=q; 否则将q插入到head1前; if(n3) return; p=head-rlink; q=p-rlink; int k=n/2; p-rlink=q-rlink; q-rlink-llink=p; if(!head1) head1=tail1=q; else { q-rlink=head1; head1-llink=q; head1=q; } p=p-rlink; q=p-rlink; head-llink-rlink=head1; head1-llink=head-llink; tail1-rlink=head; head-llink=tail1; 虞茹烷讶陇嫌岂佳本诵

文档评论(0)

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

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

1亿VIP精品文档

相关文档