自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 使用顺序表创建循环队列

【代码】使用顺序表创建循环队列。

2023-06-30 20:57:16 117

原创 栈第五题(实现共享栈)

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

原创 单链表第二十四题(寻找环的入口点)

判断一个链表是否有环,如果有,找出环的入口点并返回,否则 返回NULL。

2023-06-30 19:32:34 42

原创 单链表第二十三题(删除绝对值相等的元素)

23.用单链表保存m个整数,结点结构为[data][link],且|data|

2023-06-30 19:27:13 377

原创 单链表第二十二题(寻找公共后缀)

可共享相同的后缀存储空间,例如,“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

原创 单链表第十七题(判断循环双链表是否对称)

17.设计一个算法用于判断带头结点的循环双链表是否对称。

2023-06-29 09:58:43 106

原创 单链表第十六题(判断是否是子序列)

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

原创 单链表第六题(单链表排序)

6.有一个带头节点的单链表L,设计一个算法使其元素递增有序。

2023-06-28 08:18:06 107 1

原创 单链表第五题(带头节点单链表就地逆置)

5.试编写算法将带头节点的单链表就地逆置,所谓”就地“是指辅助空间复杂度为O(1)。

2023-06-27 11:58:15 172

原创 单链表第四题(带头节点的单链表删除最小值节点)

4.试编写在带头节点的单链表L中删除一个最小值节点的高效算法(假设最小值试唯一的)

2023-06-27 11:34:26 282

原创 单链表第三题(反向输出链表值)

3.设L为带头节点的单链表,编写算法实现从尾到头反向输出每个节点的值。

2023-06-27 11:03:01 180

原创 单链表第二题(带头节点链表删除指定值)

2.在带头几点的单链表L中,删除所有值为x的节点,并释放其空间。假设值为x的节点不唯一,试编写算法以实现上述操作。

2023-06-27 10:42:44 105

原创 单链表第一题(递归删除不带头节点链表中指定值)

1.设计一个递归算法,删除不带头节点的单链表L中所有值为X的节点。

2023-06-27 10:11:28 340

原创 顺序表第十四题(求解三元组最短距离)

例如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

原创 顺序表第十二题(寻找主元素)

顺序表第十二题(寻找主元素)

2023-06-27 08:38:52 59

原创 顺序表第十一题(寻找中位数)

顺序表第十一题(寻找中位数)

2023-06-27 08:38:31 68 1

原创 顺序表第九题(折半查找指定元素)

线性表(a1,a2, a3........an)中的元素递增有序且按顺序表存储于计算机内。要求设计一算法,完成用最少时间在表中查找数值为x的元素,若找不到则将其插入并使表中元素仍递增有序。若找到则将其与后继元素相交换。

2023-06-25 16:34:04 40 1

原创 顺序表第八题(逆置顺序表中指定范围元素)

顺序表第八题(逆置顺序表中指定范围元素)

2023-06-25 16:13:59 30 1

原创 顺序表第七题(合并两个顺序表)

顺序表第七题(合并两个顺序表)

2023-06-25 15:57:30 41 1

原创 顺序表第六题(删除重复值)

5.从顺序表中删除起值在给定值s与t之间(包含s和t,要求s

2023-06-25 15:47:38 93 1

原创 顺序表第四题(删除指定范围值)

从有序顺序表中删除其值在给定值s与t之间(要求s

2023-06-25 15:35:14 406 1

原创 顺序表第三题(删除数组中指定值)

3.对长度为n的顺序表L,编写一个时间复杂度为O(n),空间复杂度为O(1)的算法。该算法删除线性表中所有值为x的数据元素。

2023-06-25 15:26:26 71 1

原创 顺序表第二题(逆置数据元素)

2.设计一个高效算法,将顺序表L的所有元素逆置,要求算法的空间复杂度为O(1),

2023-06-25 15:18:49 96 1

原创 顺序表第一题(删除顺序表中最小值)

1.从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位置由最后一个元素填补。若顺序表为空则显示出错信息并退出运行。

2023-06-25 15:08:33 483

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除