![](https://static.youtibao.com/asksite/comm/pc/images/content_title_q.png)
已知线性表中的元素以值递增有序排列,并以单链表作存储结构(不带表头节点)。试写一算法,删除表中所有大于x且小于y的元素(若表中存在这样的元素)同时释放被删除结点空间。
![](https://static.youtibao.com/asksite/comm/pc/images/content_title_a.png)
第2题
单链表
实验目的:
(1)熟练掌握线性表的单链式存储结构及在其上实现线性表的各种基本运算的方法。
(2)掌握和理解本实验中出现的一些基本的C语言语句。
(3)体会算法在程序设计中的重要性。
实验内容:
(1)设计一算法,逆置带头结点的动态单链表head。要求利用原表的结点空间,并要求用尽可能少的时间完成。
(2)设有两个按元素值递增有序的单链表A和B,编一程序将A表和B表归并成一个新的递增有序的单链表C(值相同的元素均保留在C表中),并要求利用原表的空间存放C。
第5题
顺序存储的线性表
实验目的:
(1)了解线性表的逻辑结构特征。
(2)熟练掌握线性表的顺序存储结构的描述方法,及在其上实现各种基本运算的方法。
(3)掌握和理解本实验中出现的一些基本的c语言语句。
(4)体会算法在程序设计中的重要性。
实验内容:
(1)将一顺序表a中的元素逆置。要求算法仅用一个辅助结点。
(2)求顺序表中的元素的最大值和次最大值。
(3)试设计一个算法,仅用一个辅助结点,实现将顺序表a中的结点循环右移k位的运算。
(4)设一顺序表中元素值递增有序。试设计一算法,将元素x插入到表中适当的位置上,并保持顺序表的有序性。
第7题
A.100,2000,100
B.1000,50,100
C.100,500,10
D.1000,50,10
第8题
已知一个有序单链表(从小到大排列),表头指针为head,编写一个函数向该单链表中插入一个元素为x的节点,使插入后该单链表仍有序。
第9题
对线性表采用折半查找法,该线性表必须()。
A.采用顺序存储结构
B.采用链式存储结构
C.采用顺序存储结构,且元素按值有序
D.采用链式存储结构,且元素按值有序
第10题
算法实现的思路为:在有序单链表中插入一个数据元素x,首先要找到该元素应该插入到什么位置,才能保证插入后的单链表仍为有序表。因此,算法的第一步是寻找x的位置:设置指针p、q,最初p指向头结点,q指向头结点的下一个结点,比较q所指数据域的值与x的大小,如果小于x,则p、q分别向后移动一个位置,使p始终作为q的前驱结点,然后重复上面的比较过程;如果比较结果大于x或是比较到最后单链表结束了,则找到了插入位置,在p与q之间插入结点x即可。算法的具体实现如下:
第11题
已知单链表L是一个递增有序表,试写一高效算法,删除表中值大于min且小于ma.x的结点(若表中有这样的结点),同时释放被删结点的空间,这里min和max是两个给定的参数。