首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
设有带头结点的循环双链表表示的线性表L===(a1,a2,……,an-1,an)。设计在时间和空间上都尽可能高效的算法,将L改造成L=(a1,a3,……,an……a4,a2)。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用
设有带头结点的循环双链表表示的线性表L===(a1,a2,……,an-1,an)。设计在时间和空间上都尽可能高效的算法,将L改造成L=(a1,a3,……,an……a4,a2)。要求: (1)给出算法的基本设计思想。 (2)根据设计思想,采用
admin
2013-07-12
47
问题
设有带头结点的循环双链表表示的线性表L===(a
1
,a
2
,……,a
n-1
,a
n
)。设计在时间和空间上都尽可能高效的算法,将L改造成L=(a
1
,a
3
,……,a
n
……a
4
,a
2
)。要求:
(1)给出算法的基本设计思想。
(2)根据设计思想,采用C或C++或JAVA语言描述算法,关键之处给出注释。
(3)说明你所设计算法的时间复杂度和空间复杂度。
选项
答案
(1)算法的基本设计思想如分析所述。 (2)用C语言算法描述如下: void split(DLinkList &L){ DLinkList * p=L->next,* q,*s=NULL; L->next=L;L=>prior=L; //构造只有一个头结点的循环双链表 while(p!=L){ //扫描L的所有结点 q=p->next; p->next=L;p->prior=L->prior; //将*P结点插入到L循环双链表的末尾 L->prior->next=p;L->prior=p; p=q;q=p->next; if(S==NULL){ //s原为空表时,现只含有一个结点 s=p: s->next=s;s->prior=s; } else{ //将*P插入到s的前端 p->next=S;p->prior=s->prior; s->prior->next=p;s->prior=p; s=p; } p=q; } s->prior->next=L; //将L和S合并起来 L->prior->next=s: q=L->prior; L->prior=S->prior: S->prior=q: } (3)说明算法的复杂性:上述算法的时间复杂度为O(n),算法的空间复杂度为O(1)。
解析
用P指针扫描L的所有结点,先将L构造为只有一个带头结点的循环双链表,而用指针s构造不带头结点的循环双链表(初始时为NULL),对于奇数序号的结点*P,采用尾插法插入到L中,对于偶数序号的结点*P,采用头插法插入到s中。最后将L和s两个循环双链表连接成一个循环双链表,L为其头结点指针。
转载请注明原文地址:https://jikaoti.com/ti/8wajFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
巴黎和会讨论的中心问题是()。
撰写《南海寄归内法传》和《大唐西域求法高僧传》二书,记录了南亚许多国家的社会、文化和宗教状况,成为研究7世纪印度、巴基斯坦和南洋各国历史、地理可靠资料的是()。
“建安文学”的代表作不包括()。
论述一战后德国的赔款问题
周王室的两大官僚系统是()。
下列著作被人们称为17世纪物理学、数学的百科全书,并标志着经典力学体系的完成的是()。
下列关于戈尔巴乔夫上台以后发生的事件,按时间先后顺序排列正确的是()。①苏联进行政治改革②苏联进行经济改革③八一九事件④苏联解体
最晚到汉武帝时期,出现了我国第一部算学著作(),它记载了用竿标测日影以求日高的方法,从而认识了勾股定理。
中国近代第一所外语学校、同时也是新式学堂的是()。
编写判定给定的二叉树是否是二叉排序树的函数。
随机试题
关于工程总承包,以下说法正确的是()。
什么是链路容量自动调整?
根据《互联网药品交易服务审批暂行规定》,下列叙述错误的是
工程项目承包商的风险可以归纳为( )。
本票的持票人未按照法定期限提示见票的,丧失对出票人以外的前手的追索权。()
甲公司持有乙公司60%有表决权股份,能够对乙公司实施控制,对该股权投资采用成本法核算。2×17年10月,甲公司将该项投资中的80%出售给非关联方,取得价款2000万元,相关手续于当日办理完成。处置股权后,甲公司无法再对乙公司实施控制,也不能施加共同控制或重
根据对《一二三四歌》谱例的分析,设计一课时的初中歌唱课教学目标与简单教学环节。要求:针对教学重点设计具体的教学策略与过程。
“儿童对年长成员的无意识模仿就是最初教育的发展”,此观点属于教育的()。
分析近期某一家报纸的一项重大新闻报道。指出其优点与不足。
进程调度有各种各样的算法,如果选择算法不当,就会出现______现象。
最新回复
(
0
)