题目内容 (请给出正确答案)
[主观题]

设有n个待排序元素存放在一个不带表头结点的单链表中,每个链表结点只存放一个元素,头指针为r。

试设计一个算法,对其进行二路归并排序,要求不移动结点中的元素,只改各链结点中的指针,排序后r仍指示结果链表的第一个结点。(提示:先对待排序的单链表进行一次扫描,将它划分为若干有序的子链表,其表头指针存放在一个指针队列中。当队列不空时重复执行,从队列中退出两个有序子链表,对它们进行二路归并,结果链表的表头指针存放到队列中。如果队列中退出一个有序子链表后变成空队列,则算法结束。这个有序子链表即为所求)。

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“设有n个待排序元素存放在一个不带表头结点的单链表中,每个链表…”相关的问题

第1题

设有n个元素的待排序元素序列为TA[],试编写一个函数,利用队列辅助实现快速排序的非递归算法。

点击查看答案

第2题

设有n个元素的待排序元素序列为TA[],元素在序列中随机排列。试编写一个函数、返回序列中按排序码值从小到大排序的第k(0≤k<n)个元素的值。
设有n个元素的待排序元素序列为TA[],元素在序列中随机排列。试编写一个函数、返回序列中按排序码值从小到大排序的第k(0≤k<n)个元素的值。

点击查看答案

第3题

再不带表头结点的链栈中,若栈顶指针top直接指向栈顶元素,则将一个新结点p入栈时修改链的两个对应语句为________和_________
点击查看答案

第4题

设有n个元素存放于一个一维数组A[]中,每个元素的数据类型设为T,试设计一个递归函数,重新实现
简单选择排序算法,函数的首部如下。voidselectSort(TA[],intleft,intright);其中,[AC]存放待排序数据,left和right是当前递归调用时排序区间的左、右端点。最初外部调用的形式为:selectSort(A,0,n-1).

点击查看答案

第5题

【EX-3-10】设有一个不带表头结点的单链表,下面算法的功能是: (1) 求以head为头指针的单链表的结点个数。 (2) 正向显示以head为头指针的单链表的所有结点值。 请在空白处填入正确的语句。 (1) int count(LinkList head) { if (________①_________) return 0; else return _________②________; } (2) void traverse(LinkList head) { if (head != NULL) { _________③_____________; _________④_____________; } }
点击查看答案

第6题

【EX-3-10】设有一个不带表头结点的单链表,下面算法的功能是: (1) 求以head为头指针的单链表的结点个数。 (2) 正向显示以head为头指针的单链表的所有结点值。 请在空白处填入正确的语句。 (1) int count(LinkList head) { if (________①_________) return 0; else return _________②________; } (2) void traverse(LinkList head) { if (head != NULL) { _________③_____________; _________④_____________; } }
点击查看答案

第7题

【EX-3-10】设有一个不带表头结点的单链表,下面算法的功能是: (1) 求以head为头指针的单链表的结点个数。 (2) 正向显示以head为头指针的单链表的所有结点值。 请在空白处填入正确的语句。 (1) int count(LinkList head) { if (________①_________) return 0; else return _________②________; } (2) void traverse(LinkList head) { if (head != NULL) { _________③_____________; _________④_____________; } }
点击查看答案

第8题

在长度为n的 _______ 上,删除第一个元素,其算法的时间复杂度为O(n)。

A.只有表头指针的不带表头结点的循环单链表

B.只有表尾指针的不带表头结点的循环单链表

C.只有表尾指针的带表头结点的循环单链表

D.只有表头指针的带表头结点的循环单链表

点击查看答案

第9题

【EX-3-10】设有一个不带表头结点的单链表,下面算法的功能是: (1) 求以head为头指针的单链表的结点个数。 (2) 正向显示以head为头指针的单链表的所有结点值。 请在空白处填入正确的语句。 (1) int count(LinkList head) { if (________①_________) return 0; else return _________②________; } (2) void traverse(LinkList head) { if (head != NULL) { _________③_____________; _________④_____________; } }
点击查看答案
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
温馨提示
每个试题只能免费做一次,如需多次做题,请购买搜题卡
立即购买
稍后再说
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
赏学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反赏学吧购买须知被冻结。您可在“赏学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
赏学吧
点击打开微信