自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法学习之动态规划DP——背包问题

一维状态第i轮对体积为 3的物品进行决策,则f[7]由f[4]更新而来,这里的f[4]正确应该f[i-1][4],但从小到大枚举j这里的f[4]在第i轮计算却变成了f[i][4]。当逆序枚举背包容量j时,我们求f[7]同样由f[4]更新,但由于是逆序,这里的f[4]还没有在第i轮计算,所以此时实际计算的f[4]仍然是f[i - 1][4]。在二维情况下,状态f[i][j]是由上一轮i - 1的状态得来的,f[i][j]与f[i - 1][j]是独立的。这Si个数分别为2^0, 2^1, 2^2……

2024-03-10 17:13:53 2043

原创 常用的字符&字符串的读取方法(C / C++)

注意:用scanf读入字符串出现换行时,无需getchar();因此,这种方法只适用于读取中间不含空格的字符串。因此,这种方法只适用于读取中间不含空格的字符串。因此,用这种方法可以读取中间含空格的字符串。特点:遇到 ‘\0’(即,空格)读取终止。特点:遇到 ‘\0’(即,空格)读取终止。特点:遇到 ‘\n’(即,空格)读取终止。第一种方式getchar();第二种方式scanf自行处理。按格式书写格式化字符串即可。

2024-03-03 18:36:22 1596

原创 算法学习——递归, 以及基于递归的DFS(深度优先搜索)

斐波那契数列问题若利用递归的方法来解决,思路如下。相应代码更多有关斐波那契数列问题的优化解法,具见文章。

2024-02-02 18:01:31 523

原创 算法学习——递推

递推:利用递推数组可以避免重复计算,递推是降低时间复杂度的一种方法。

2024-02-02 17:52:35 217

原创 算法学习之每日一题Day6

1.题目来源:《算法竞赛进阶指南》2.题目链接3.题目描述。

2024-02-02 17:42:24 283

原创 算法学习之每日一题Day5

1.题目来源:第四届蓝桥杯省赛c++B组2.题目链接3.题目描述。

2024-02-02 15:54:12 251

原创 算法学习之经典问题(斐波那契数列问题)

进阶问题与基础问题相比,最大的区别是计算次数变多了。对于递归方法来说,就是调用递归函数的次数大大增加,当n较大时,会导致超时。观察易得,若利用基础的递归方法来解会有很多重复计算,可以在计算过程中用数组进行记录(记忆化搜索)。

2024-02-02 01:13:38 323

原创 算法学习之每日一题Day4

1.题目来源:《算法竞赛进阶指南》Acwing 952.题目链接3.题目描述你玩过“拉灯”游戏吗?25盏灯排成一个 5×5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。我们用数字1表示一盏开着的灯,用数字0表示关着的灯。下面这种状态给定一些游戏的初始状态,编写程序判断游戏者是否可能在 6步以内使所有的灯都变亮。输入格式。

2024-01-28 22:25:35 752

原创 算法学习之位运算

在复杂问题中经常可以作为工具让代码更加优雅。

2024-01-28 12:35:04 327

原创 算法学习之每日一题Day3

本题是对递归算法的拓展考查。其中思路二利用了递归搜索树的嵌套。本题需要注意的细节点有很多,其中两个易错点尤其需要注意。这两个易错点也是大多有关数学表达式的数值求解问题中的常见易错点。要留意,并记住相应解决方案。

2024-01-24 00:59:18 834

原创 算法学习之每日一题Day2

1.题目来源:Acwing 9052.题目链接:3.题目描述:给定 N 个闭区间 [ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。输出选择的点的最小数量。位于区间端点上的点也算作区间内。输入格式第一行包含整数 N,表示区间数。接下来 N行,每行包含两个整数 ai,bi,表示一个区间的两个端点。输出格式输出一个整数,表示所需的点的最小数量。数据范围1≤N≤105,2。

2024-01-22 12:34:58 371

原创 数据结构基础函数库——树

【代码】数据结构基础函数库——树。

2024-01-20 12:51:38 381

原创 数据结构基础函数库——顺序队列

【代码】数据结构基础函数库——顺序队列。

2024-01-20 12:46:23 360

原创 数据结构基础函数库——顺序栈

【代码】数据结构基础函数库——顺序栈。

2024-01-20 12:44:43 387

原创 数据结构基础函数库——链表

【代码】数据结构基础函数库——链表。

2024-01-20 12:43:32 382

原创 数据结构基础函数库——顺序表

【代码】数据结构基础函数库——顺序表。

2024-01-20 12:42:15 361

原创 算法学习之每日一题Day1

小明需要在一篇文档中加入 N 张图片,其中第i张图片的宽度是Wi,高度是 Hi。假设纸张的宽度是M,小明使用的文档编辑工具会用以下方式对图片进行自动排版:1.该工具会按照图片顺序,在宽度M以内,将尽可能多的图片排在一行。该行的高度是行内最高的图片的高度。例如在M=10的纸张上依次打印 3x4,2x2,3x3 三张图片,则效果如下图所示,这一行高度为4。(分割线以上为列标尺,分割线以下为排版区域;数字组成的矩形为第x张图片占用的版面)0123456789111111 33311122333。

2024-01-20 11:52:40 380

原创 串的模式匹配——小题(判断,选择)

1.设主串的长度为n,模式串的长度为m,则串匹配的KMP算法时间复杂度是(C)。2.串 ‘ababaaababaa’ 的next数组为:(C)3.字符串‘ababaabab’ 的nextval 为:(A)解析:区分2,3(区分next和nextval的求法)

2024-01-05 12:23:02 373

原创 数组和广义表——小题(判断,选择)

3.设有数组A[i,j],数组的每个元素长度为3字节,i的值为1 到8 ,j的值为1 到10,数组从内存首地址BA开始顺序存放,当用以列为主存放时,元素A[5,8]的存储首地址为(B)。2.将一个A[1..100,1..100]的三对角矩阵,按行优先存入一维数组B[1‥298]中,A中元素A6665(即该元素下标i=66,j=65),在B数组中的位置K为(B)。4.广义表A=(a,b,(c,d),(e,(f,g))),则式子Head(Tail(Head(Tail(Tail(A)))))的值为(D)。

2024-01-05 10:56:49 54

原创 算法复杂度分析——小题(判断,选择)

12.采用多项式的非零项链式存储表示法,如果两个多项式的非零项分别为N1​和N2​个,最高项指数分别为M1​和M2​,则实现两个多项式相乘的时间复杂度是:(A)11.如果对线性表的运算只有4种,即删除第一个元素,删除最后一个元素,在第一个元素前面插入新元素,在最后一个元素的后面插入新元素,则最好使用()。则采用哪种存储方式最节省运算时间?10.在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行(B)操作与链表的长度有关。6.将长度为n的单链表连接在长度为m的单链表之后的算法的时间复杂度为(B)。

2024-01-03 18:06:40 327

原创 线性表(小题——判断,选择)

若非静态变量或全局变量,否则s没有被初始化,是随机值,*s的值无法确定,即没有确定的语义;理由同上,对随机地址的操作不具有确定的语义(s[0]等价于*s)。11.数据结构是一门研究非数值计算的程序设计问题中计算机的(A)以及它们之间的关系和运算等的学科。D、语法错误,c(int)和a(const int*)的类型不匹配,会引起编译错误。14.与数据元素本身的形式、内容、相对位置、个数无关的是数据的(C)。6.设有如下定义的链表,则值为7的表达式是(D)。7.下面定义结构变量的语句中错误的是(D)。

2024-01-03 00:15:28 874

原创 栈和队列——小题(判断,选择)

1.给定一个堆栈的入栈序列为{ 1, 2, ⋯, n },出栈序列为{ p1​, p2​, ⋯, pn​ }。解析:循环队列是一个抽象的数据结构,而单向循环链表和循环数组都是具体的实现方法并不是数据结构的本身。8.在一个链队列中,front和rear分别为头指针和尾指针,则插入一个结点s的操作为( C)。程序运行时使用栈来保存调用过程的信息,自栈底到栈顶保存的信息一次对应的是(A )。指针来表示队列的范围,那么这样的循环队列可以容纳的元素个数最多为:(B)转为后缀表达式,则相应的堆栈操作序列是:(C)

2024-01-02 23:20:24 520

原创 排序——小题(选择,判断)

2.对初始数据序列{ 8, 3, 9, 11, 2, 1, 4, 7, 5, 10, 6 }进行希尔排序。若第一趟排序结果为( 1, 3, 7, 5, 2, 6, 4, 9, 11, 10, 8 ),第二趟排序结果为( 1, 2, 6, 4, 3, 7, 5, 8, 11, 10, 9 ),则两趟排序采用的增量(间隔)依次是:(D)3.在快速排序的一趟划分过程中,当遇到与基准数相等的元素时,如果左指针停止移动,而右指针在同样情况下却不停止移动,那么当所有元素都相等时,算法的时间复杂度是多少?

2024-01-02 15:20:45 96

原创 查找——小题(判断,选择)

则该树的后序遍历结果是:(B)而二分查找树最后情况是只有左孩子或者右孩子,此时退化为线性表,所以它的最坏时间性能即为O(n)。解析:因为折半查找判定树的上述性质,所以它的最坏时间性能即为O(logn)。4.下列二叉树中,可能成为折半查找判定树(不含外部结点)的是:(A)折半查找判定树的每个结点左右子树深度差不会超过1(即为一种平衡树)5.若二叉搜索树是有N个结点的完全二叉树,则不正确的说法是:(C)1.折半查找与二分查找树的时间性能在最坏的情况下是相同的。因此,折半查找判定树是一种特殊的二分查找树。

2023-12-28 19:58:25 284

原创 图——小题(判断,选择)

定义:即有向图中不同的两个顶点vi,vj相互可达(vi可到vj,同时vj可到vi)。解析:树也是图的一种。因此,这句话应改为无向连通图边数一定不小于顶点个数减1。给定一个有向图的邻接表如下图,则该图有__个强连通分量。解析:对于选择判断题,只需要根据定义逐个选项判断即可。1.无向连通图边数一定大于顶点个数减1。3.(求强连通分量的个数)

2023-12-27 17:13:15 532 1

原创 求最短路——Dijstra算法(朴素版)

作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。第二行给出N个正整数,其中第i个数是第i个城市的救援队的数目,数字间以空格分隔。随后的M行中,每行给出一条快速道路的信息,分别是:城市1、城市2、快速道路的长度,中间用空格分开,数字均为整数且不超过500。输入第一行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0 ~ (N−1);

2023-11-14 18:29:13 71 1

原创 有关树的小题(选择和判断)

若T的高度为h(单结点的树h=1),则T的结点数最多为:(注意:本题的kh指的是k的h次方)若T的高度为h(单结点的树h=1),则T的结点数最少为:(注意:本题的kh指的是k的h次方)9.判断:对N(≥2)个权值均不相同的字符构造哈夫曼树,则树中任一非叶结点的权值一定不小于下一层任一结点的权值。4.判断:若一个结点是某二叉树的中序遍历序列的最后一个结点,则它必是该树的前序遍历序列中的最后一个结点。B.当一棵具有n 个叶子结点的二叉树的WPL 值为最小时,称其树为哈夫曼树,其二叉树的形状是唯一的。

2023-10-29 20:21:09 264

原创 顺序栈函数库

构成的序列,对一个空堆栈进行操作,相应操作均可行(如没有出现删除时栈空)且最后状态也是栈空,则称该序列是合法的堆栈操作序列。输入第一行给出两个正整数N和M,其中N是待测序列的个数,M(≤50)是堆栈的最大容量。和一个回车的时候,标志着输入结束。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出。序列保证不为空,且长度不超过100。首先,如果所有符号配对正确,则在第一行中输出。如果该序列是合法的堆栈操作序列,或。序列,判断该序列是否合法。对每个序列,在一行中输出。如果缺少右符号,则输出。

2023-10-05 22:12:28 161

原创 顺序表函数库的建立

给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。在一行中输出第一次出现的最长连续递增子序列,数字之间用空格分隔,序列结尾不能有多余空格。输入第1行给出正整数n(≤105);第2行给出n个整数,其间以空格分隔。

2023-10-04 22:03:07 105 1

原创 题目练习——顺序表的基本操作

本题要求实现顺序表元素的增、删、查找以及顺序表输出共4个基本操作函数。实现时需考虑表满扩容的问题。1.空间的开辟释放以及扩容;2.插入函数和删除函数。

2023-09-06 22:17:01 87 1

原创 动态内存管理常用函数——malloc, free, calloc, realloc

内存管理

2023-09-06 20:49:07 279 1

空空如也

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

TA关注的人

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