首页 > 大学本科
题目内容 (请给出正确答案)
[主观题]

设ha和hb分别是两个带附加头结点的非递减有序单链表的表头指针,试设计一个算法,将这两个有序

链表合并成一个非递增有序的单链表,要求结果链表仍使用原来两个链表的存储空间,不另外占用其他的存储空间,表中允许有重复的数据。

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“设ha和hb分别是两个带附加头结点的非递减有序单链表的表头指…”相关的问题
第1题
已知指针ha和hb分别指向两个单链表的头结点,并且已知两个链表的长度分别为m和n。试写一算法将
这两个链表连接在一起,假设指针hc指向连接后的链表的头结点,并要求算法以尽可能短的时间完成连接运算。请分析你的算法的时间复杂度。

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

点击查看答案
第3题
设有一个表头指针为h的单链表,试设计一个算法,通过遍历一趟链表,将链表中所有结点的链接方向
逆转,如图2-4所示。要求逆转结果链表的表头指针h指向原链表的最后一个结点。

点击查看答案
第4题
在一个非递减有序的线性表中,插入一个值为x的元素,使插入后的线性表仍为非递减有序表,用带头结点的单链表编
写算法。

算法实现的思路为:在有序单链表中插入一个数据元素x,首先要找到该元素应该插入到什么位置,才能保证插入后的单链表仍为有序表。因此,算法的第一步是寻找x的位置:设置指针p、q,最初p指向头结点,q指向头结点的下一个结点,比较q所指数据域的值与x的大小,如果小于x,则p、q分别向后移动一个位置,使p始终作为q的前驱结点,然后重复上面的比较过程;如果比较结果大于x或是比较到最后单链表结束了,则找到了插入位置,在p与q之间插入结点x即可。算法的具体实现如下:

点击查看答案
第5题
直接插人排序算法可以基于链表来实现。假设有一个数据随机排列的带表头结点的单链表L,试设计一个基于链表的直接插人排序算法,排序后的单链表仍然占用原来的空间。

点击查看答案
第6题
假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,请编写算法将A表和B表归
并成一个按元素值递减有序(即非递增有序,允许表中含有值相同的元素)排列的线性表C,并要求利用原表(即A表和B表)的结点空间构造C表。

点击查看答案
第7题
设链表不带头结点,且所有操作均在表头进行,则下列最不适合作为链栈的链表是()。A.只有表头结点

设链表不带头结点,且所有操作均在表头进行,则下列最不适合作为链栈的链表是()。

A.只有表头结点指针,没有表尾指针的双向循环链表

B.只有表尾结点指针,没有表头指针的双向循环链表

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

D.只有表尾结点指针,没有表头指针的单向循环链表

点击查看答案
第8题
设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操作的时间复杂度为()

A.O(log2n)

B.O(1)

C.O(n2)

D.O(n)

点击查看答案
第9题
在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是(53)。A.O(1)B.O(n)C.

在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是(53)。

A.O(1)

B.O(n)

C.O(nlogn)

D.O(n2)

点击查看答案
第10题
试设计一个实现下述要求的Locate运算的函数。设有一个带附加头结点的双向链表L, 每个结点有4
个数据成员:指向前驱结点的指针prior、指向后继结点的指针next、存放数据的成员data和访问频度freq。所有结点的freq初始时都为0。每当在链表上进行一次Locate(x) 操作时, 令元素值为x的结点的访问频度freq加1, 并将该结点前移,链接到与它的访问频度和等的结点后面,使得链表中所有结点保持按访问频度递减的顺序排列,以使频繁访问的结点总是靠近表头。

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改