- 博客(40)
- 收藏
- 关注
原创 栈第五题(实现共享栈)
5.设有两个栈s1、s2都采用顺序栈方式,并共享一个存储区[0,.....,maxsize-1],为了尽量利用空间,减少溢出的可能,可采用栈顶相向、迎面增长的存储方式。试设计s1、s2有关入栈和出栈的操作算法。
2023-06-30 20:06:26
156
原创 栈第四题(判断是否中心对称)
4.设单链表的表头指针为L,结点结构由data和next两个域构成,其中 data域为字符型,试设计算法判断该链表的全部n个字符是否中心对成。例如xyx,xyyx都是中心对称。
2023-06-30 19:53:04
230
原创 单链表第二十五题(就地穿插单链表节点)
25.设线性表L=(a1,a2,a3,an-2,an-1,an)采用带头节点的单链表保存,请设计一个空间复杂度为O(1)且时间上尽可能高效的算法,重新排列L中的各结点,2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释。3)说明你所设计的算法的时间复杂度。1)给出算法的基本设计思想。
2023-06-30 19:46:40
236
原创 单链表第二十二题(寻找公共后缀)
可共享相同的后缀存储空间,例如,“loading”和“being”的存储映像如下图所示。请设计一个时间上尽可能高效的算法,找出由str1和str2所指向两个链表共同后缀。2)根据设计思想,采用C或C++或java语言描述算法,关键支出给出注释。设str1和str2分别指向两个单词所在单链表的头结点,链表结点结构为。22.假定采用带头节点的单链表保存单词,当两个单词有相同的后缀时,3)说明你所设计算法的时间复杂度。1)给出算法的基本设计思想。
2023-06-30 19:13:56
222
原创 单链表第二十一题(寻找倒数第k个元素)
3)根据设计思想和实现步骤,采用程序设计语言描述算法(使用C、C++或java语言实现),若查找成功,算法输出该结点的data域的值,并返回1;在不改变链表的前提下,请设计一个尽可能高效的算法,21.已知一个带有表头节点的单链表,结点结构为。查找链表中倒数第k个位置上的结点(k为正整数)。关键之处请给出简要注释。1)描述算法的基本设计思想。2)描述算法的详细实现步骤。假设该链表只给出了头指针。
2023-06-29 18:40:47
175
原创 单链表第二十题(按频度排序)
每当在链表中进行一次Locate(L,x)运算时,令元素值为X的节点中freq域的值增1,其每个节点中除有pred(前缀指针),data(数据)和next(后继指针)域外,同时最近访问的节点排在频度相同的节点前面,以便使频繁访问的节点总是靠近表头。在链表被启用前,其均值初始化为零。并使此链表中节点保持按访问频度非增(递减)的顺序排列,该运算为函数过程,返回找到节点的地址,类型为指针型。试编写符合要求的Locate(L,x)运算的算法,20.设头指针为L的带有表头节点的非循环双向链表,
2023-06-29 15:46:16
81
原创 单链表第十九题(循环输出最小值并删除)
19.设有一个带头节点的循环单链表,其结点值均为正整数。设计一个算法,反复找出单链表中节点值最小的节点并输出,然后将该节点从中删除,直到单链表为空止,再删除表头结点。
2023-06-29 10:52:57
111
原创 单链表第十八题(将B链表链接到A链表)
编写一个函数将链表h2连接到链表h1之后,要求连接后的链表仍保持循环链表形式。18.有两个循环单链表,链表头指针分别为h1和h2,
2023-06-29 10:23:45
66
原创 单链表第十六题(判断是否是子序列)
16.两个整数序列A=a1,a2,a3,....am和B=b1,b2,b3,....bn已经存入两个单链表中,设计一个算法,判断序列B是否是序列A的连续子序列。
2023-06-29 08:57:00
290
原创 单链表第十五题(求两链表交集)
交集就是公共元素,这题和上一题类似,可以作为参考。15.已知两个链表A和B分别表示两个集合,其元素递增排序。编制函数,求A与B的交集,并存放于A链表中。
2023-06-29 08:39:45
330
原创 单链表第十四题(提取公共元素)
设计一个算法从A和B中的公共元素产生单链表C,要求不破坏A、B节点。14.设A和B是两个单链表(带头节点),其中元素递增有序。
2023-06-28 18:07:48
40
原创 单链表第十三题(归并单链表)
请编写算法将这两个单链表归并为一个按元素值递减次序排列的单链表,13.假设有两个按元素值递增次序排列的线性表,均以单链表形式存储,并要求利用原来两个单链表的节点存放归并后的单链表。
2023-06-28 17:19:31
50
原创 单链表第十二题(有序链表去重)
例如{7,10,10,21,30,42,42,42,51,70}将变为{7,10,21,30,42,51,70}12.在一个递增有序的线性表中,有数值相同的元素存在,若储存方式为单链表,设计算法去掉数值相同的元素,使表中不再有重复的元素,
2023-06-28 16:57:15
77
原创 单链表第十一题
设计一个就地算法,将其拆分为两个线性表,使得A={a1,a2,..........,an},B={b1,b2,........,bn};11.设C={a1,b1,a2,b2,......an,bn}为线性表,采用带头节点的hc单链表存放,
2023-06-28 16:26:02
135
原创 单链表第十题(按奇偶查分单链表)
10.将一个带头结点的单链表A分解为两个带头节点的单链表A和B, 使得A表中含有原表中序号为奇数的元素,而B表中含有原表中序号为偶数的元素, 且保持其相对顺序不变。
2023-06-28 08:19:49
169
原创 单链表第九题(递增输出并删除)
9.给定一个带表头节点的单链表,设head为头指针,节点结构为(data, next),data为整型元素,next为指针, 试写出算法:按递增次序输出单链表中各节点的数据元素,并释放节点所占的存储空间。(要求:不允许使用数组作为辅助空间)
2023-06-28 08:19:22
50
原创 单链表第七题(删除指定范围值)
试编写一个函数,删除表中所有介于给定的两个值(作为函数参数给出)之间的元素(若存在)如果有序的话,可以找到第一个大于等于给定值和第一个小于等于给定值的元素。7.设在一个带表头节点的单链表中所有元素节点的数据值无序,找到符合条件的,就把它删除;但这里是无序的,就全部遍历一遍,
2023-06-28 08:18:22
312
1
原创 单链表第二题(带头节点链表删除指定值)
2.在带头几点的单链表L中,删除所有值为x的节点,并释放其空间。假设值为x的节点不唯一,试编写算法以实现上述操作。
2023-06-27 10:42:44
105
原创 顺序表第十四题(求解三元组最短距离)
例如S1={-1,0,9},S2={-25,-10,10,11},S3={2,9,17,30,41},14.定义三元组(a,b,c)(a、b、c均为正数)的距离D=∣a-b∣+∣b-c∣+∣c-a∣。请设计一个尽可能高效的算法,计算并输出所有可能的三元组(a,b,c)2)根据设计思想,采用C语言或C++语言描述算法,关键之处给出注释。给定3个非空整数集合S1、S2和S3,按升序分别存储在3个数组中。则最小距离为2,相应的三元组为(9,10,9)。(a∈S1,b∈S2,c∈S3)中的最小距离。
2023-06-27 09:30:25
387
原创 顺序表第十三题(寻找未出现的最小证整数)
13.给定一个含n(n>=1)个整数的数组,请设计一个在时间上尽可能高效的算法,2)根据设计思想,采用C或C++语言描述算法,关键之处给出注释;当num=1时,遍历数组等于第一个元素1,说明1已经出现了。例如,数组{-5,3,2,3}中未出现的最小正整数是1;如果遍历到某个地方刚好,第一次大于它的时候,遍历到负数,不管,因为他不在我们考虑范围内。num加1,变成4,数组后面没有元素。从2往后走,num加1变成2,相等。找出数组中未出现的最小正整数。1)给出算法的基本设计思想,num加1,变成3,相等。
2023-06-27 08:43:13
41
原创 顺序表第十题(循环左移)
这道题和第八题(逆置顺序表中指定范围元素)非常类似的一道题,也就是说我们要把后面的放到前面来,做一些修改。10.设将n(n>1)个整数存到一维数组R中,设计一个在时间和空间两方面都尽可能高效的算法,2)根据设计思想,采用C或C++或java语言描述算法,关键之处给出注释。将R中保存的序列循环左移p(0
2023-06-27 08:39:06
31
原创 顺序表第九题(折半查找指定元素)
线性表(a1,a2, a3........an)中的元素递增有序且按顺序表存储于计算机内。要求设计一算法,完成用最少时间在表中查找数值为x的元素,若找不到则将其插入并使表中元素仍递增有序。若找到则将其与后继元素相交换。
2023-06-25 16:34:04
40
1
原创 顺序表第三题(删除数组中指定值)
3.对长度为n的顺序表L,编写一个时间复杂度为O(n),空间复杂度为O(1)的算法。该算法删除线性表中所有值为x的数据元素。
2023-06-25 15:26:26
71
1
原创 顺序表第一题(删除顺序表中最小值)
1.从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位置由最后一个元素填补。若顺序表为空则显示出错信息并退出运行。
2023-06-25 15:08:33
483
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人