自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 kmp(自用)

【代码】kmp(自用)

2024-10-09 21:26:06 94

原创 单调队列——滑动窗口

【代码】单调队列——滑动窗口。

2024-10-05 10:40:08 145

原创 小错误(输入数据)牛客 14683 储物点的距离

【代码】小错误(输入数据)

2024-10-03 18:46:17 187

原创 BFS - 走“日”字

【代码】BFS - 走“日”字。

2024-09-21 18:29:44 267

原创 BFS - 求最短路

【代码】BFS - 求最短路。

2024-09-21 18:26:19 364

原创 归并排序的应用——逆序对的数量

mid 左边的逆序对数量, mid 右边的逆序对数量。

2024-09-12 16:05:01 110

原创 快排的应用 —— 第 k 个小的数

这时 k 只会在这两边的其中一边,所以比较 k 与 (j-l+1)的大小关系。每排完一次序,数会被 i/j 以分界点分成左右两边。

2024-09-12 14:44:29 210

原创 线性代数——逆序数

【代码】线性代数——逆序数。

2024-09-07 19:59:32 456

原创 A + B ( EOF )

【代码】A + B ( EOF )

2024-09-03 20:29:20 122

原创 线性DP - 数字三角形

求所有从起点走到最低层的路径上数字之和的最大值。

2024-08-28 00:47:01 450

原创 动态规划 - 分组背包

第 i 组选第 k 个物品 f [ i - 1 ] [ j - v [ i ] [ k ] ] + w [ i ] [ k ]eg : 第 i 组一个物品都不选 f [ i - 1 ] [ j ],划分集合依据:第 i 组物品选第几个物品。

2024-08-28 00:23:34 325

原创 动态规划 - 多重背包

状态划分依据:第 i 个物品选多少个,第 i 个物品总共有 s[i] 个。优化后的代码(二进制优化)二维代码(暴力写法)

2024-08-27 00:13:35 147

原创 动态规划 - 完全背包

(第 i 个物品的个数没有限制,但总体积要满足要求)集合划分依据:第 i 个物品选多少个。

2024-08-26 23:31:20 243

原创 动态规划 - 01背包

划分依据:第 i 个物品是否选。

2024-08-26 18:12:42 112

原创 二分图的最大匹配 - 匈牙利算法

匹配:给定一个二分图G,在G的一个子图M的边集{E}中的任意两条边都不依附于同一个顶点,则称M是一个匹配。最大匹配数:所有匹配中包含边数最多的一组匹配被称为二分图的最大匹配,其边数为最大匹配数。

2024-08-26 17:16:37 119

原创 染色法(判断是否为二分图)

二分图:可以把所有的点划分到两边,使得边只在集合之间,集合内部没有边。二分图当且仅当图中不含奇数环(边数为奇数条)

2024-08-26 01:50:38 652

原创 最小生成树 - Kruskal算法

共一行,若存在最小生成树,则输出一个整数,表示最小生成树的树边权重之和,如果最小生成树不存在则输出impossible.接下来m行,每行包含三个整数u,v,w,表示点u和点v之间存在一条权值为w的边。if(a、b 不联通) 就将这条边加入集合中。1,将所有边按权重从大到小排序,调用系统的 sort 函数。kruskal算法---求稀疏图的最小生成树。图中涉及边的边权的绝对值均不超过10000。2,枚举每条边 a、b ,权重c。第一行包含两个整数n和m。

2024-08-26 01:01:41 234

原创 最小生成树 - 朴素Prim算法

共一行,若存在最小生成树,则输出一个整数,表示最小生成树的树边权重之和,如果最小生成树不存在则输出impossible.接下来m行,每行包含三个整数u,v,w,表示点u和点v之间存在一条权值为w的边。朴素Prim算法适用于稠密图 O(n^2)图中涉及边的边权的绝对值均不超过10000。最小生成树当中是不允许有自环的。第一行包含两个整数n和m。

2024-08-25 22:06:38 256

原创 多源最短路 - Floyd算法

【代码】多源最短路 - Floyd算法。

2024-08-25 11:31:25 125

原创 最短路 - SPFA算法+判断负权回路

SPFA中判断是否存在负权回路。

2024-08-24 23:59:42 206

原创 最短路 - BellFord算法

请你求出从1号点到n号点的最多经过k条边的最短距离,如果无法从1号点走到n号点,输出impossible.接下来m行,每行包含三个整数x,y,z,表示点x和点y之间存在一有向边长为z。给定一个n个点m条边的有向图,图中可能存在重边和自环,边权可能为负数。输出一个整数,表示从1号点到n号点的最多经过k条边的最短距离。如果不存在满足条件的路径,则输出“impossible”。任意边长的绝对值不超过10000。注意:图中可能 存在负权回路。第一行包含三个整数n,m,k。有边数限制,存在负权边。

2024-08-24 23:10:48 263

原创 最短路 - 堆优化Dijkstra算法

y用优先队列来模拟堆。

2024-08-24 21:46:18 138

原创 最短路 - 朴素Dijkstra算法

【代码】最短路 - 朴素Dijkstra算法。

2024-08-23 17:57:03 152

原创 有向图的拓扑排序

【代码】有向图的拓扑排序。

2024-08-23 16:59:12 200

原创 边和图的存储(邻接表)

【代码】边和图的存储(邻接表)

2024-08-23 12:38:22 768

原创 BFS - 走迷宫

【代码】BFS - 走迷宫。

2024-08-23 11:44:54 396

原创 BFS - 图中点的层次

请你求出1号点到n号点的最短距离,如果从1号点无法走到n号点,输出-1。给定一个n个点m条边的有向图,图中可能存在重边和自环。所有边的长度都是1,点的编号为1~n。

2024-08-23 01:05:42 216

原创 DFS - 树的重心

请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的发大值。重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余个连通专数的最大值最小,那么这个节点被称为树的重心。接下来n-1行,每行包含两个整数a和b,表示点a和点b之前存在一条边。给定一颗树,树中包含n个结点(编号1~n)和n-1条无向边。一个整数m,表示重心的所有的子树中最大的子树的结点数目。第一行包含整数n,表示树的结点数。

2024-08-23 00:40:59 279

原创 DFS - n皇后问题

【代码】DFS - n皇后问题。

2024-08-22 17:07:19 365

原创 DFS(数字的全排列)

【代码】DFS(数字的全排列)

2024-08-22 15:04:57 116

原创 哈希表

给定一个长度为n的字符串,再给定m个询问,每个询问包含四个整数 l1 , r1 , l2 , r2,请你判断[ l1 , r1 ]和[ l2 , r2 ]这两个区间所包含的字符串子串是否完全相同。现在要进行N次操作,对于每个询问操作输出对应的结果。2.“Q x”,询问数x是否在集合中出现过;字符串中只包含大小写英文字母和数字。1.“I x”,插入一个数x;(2,开放寻址法(存储结构)(1,拉链法(存储结构)

2024-08-20 23:43:23 236

原创

3.“DM”,荆除当前集合中的最小值(当最小值不唯一时,删除最早插入的最小体)现在要进行N次操作,对于所有第2个操作,输出当前集合的最小值。(输入一个长度为n的整数数列,从小到大输出前m小的数)5."C k x”,修改第k个插入的数,将其变为x;2."PM",输出当前集合中的最小值;4.“D k” 删除第k个插入的数;包含 down 操作。1.“ I x”,插入一个数x;

2024-08-20 01:03:45 226

原创 并查集

2,并查集 (查找某个点所在集合的点的个数)1,合并集合(并查集)

2024-08-19 22:44:02 179

原创 Trie(高效地存储和查找字符串集合的数据结构)

【代码】Trie(高效地存储和查找字符串集合的数据结构)

2024-08-19 14:49:47 528

原创 单调栈

【代码】单调栈。

2024-08-18 16:03:22 92

原创 栈与队列

【代码】栈与队列。

2024-08-18 12:48:56 91

原创 双链表的操作

【代码】双链表的操作。

2024-08-18 12:27:42 92

原创 单链表

【代码】单链表。

2024-08-18 12:02:22 486

原创 合并区间

【代码】合并区间。

2024-08-18 11:09:56 365

原创 离散化(例题:区间和)

近下来,进行 m 次询问,每个询问包含两个整数!和r,你需要求出在区间[,r之间的所有数的和。现在,我们首先进行n次操作,每次操作将某一位置x上的数加c。假定有一个无限长的数轴,数轴上每个坐标上的数都是0。共m行,每行输出一个询问中所求的区间内数字和。再接下里 m 行,每行包含两个整数!接下来n行,每行包含两个整数x和c。第一行包含两个整数n和m。

2024-08-18 00:32:13 192

欢律.apk

欢律.apk

2024-03-03

空空如也

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

TA关注的人

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