自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SQL Server2016安装(win11)遇到JRE未安装错误

使用win11环境。

2025-03-11 18:36:04 184

原创 LeetCode-Hot100-008无重复最长子串

其实就是考虑每一个字母为右端点的时候的最长子串,只不过可以使用双指针或者说滑动窗口节省到On的复杂度。不懂的可以在评论区问我。

2025-03-04 16:51:49 439

原创 LeetCode-Hot100-006三数之和

先排序解决重复的问题。再三重循环遍历,但是第二重和第三重使用双指针的做法,复杂度降低为On2。

2025-03-04 13:41:53 451

原创 LeetCode-Hot100-005盛最多水的容器

不懂的可以在评论区问我。

2025-03-03 19:50:13 514

原创 LeetCode-Hot100-004移动零

双指针的方法,不懂可以在评论区问我。

2025-02-28 20:26:16 327

原创 LeetCode-Hot100-003最长连续序列

不懂可以在评论区询问哦。

2025-02-28 19:31:23 294

原创 LeetCode-Hot100-002字母异位词

使用手写的hash,把每个字母的ascii码加起来再模,来定位hash表的索引。不懂可以在评论区问我,正常题解可以参照leetcode官方题解。

2025-02-28 13:04:21 450

原创 LeetCode-Hot100-001两数之和

给出个人解答,不懂的可以在评论区问。

2025-02-27 16:22:24 427

原创 每日一题013-ST表-洛谷p3865-模板ST表&&RMQ

这是一道 ST 表经典题——静态区间最大值O1函数返回值为读入的第一个整数。

2025-02-25 17:27:47 728

原创 每日一题012-贪心和堆-洛谷p3045买奶牛

如果按照优惠券先排序,就会把优惠券用在第一头牛上面,然后剩下的钱就不能买下1000块钱的原价牛。最终只能买一头牛,但是把优惠券用在第二头牛上面,就可以买两头牛了。我们有两种选择,一种是按照原价买这头牛,另一种是从之前的换出一张优惠券给他,之间某头牛不用优惠券了。得到了换优惠券方式买的最小价钱和用原价方式买的最小价钱(这两头牛可以是不同的牛牛)然后比较即可。每次都买用优惠券价格最小的牛,优惠券用完之后就买原价最小的牛。所以我们用优先队列维护最小的C的牛,以及用优先队列维护用优惠券购买的最小的。

2025-02-21 20:40:00 1756

原创 每日一题011-堆和队列-洛谷p2827斩蚯蚓

蛐蛐国王知道这样不是长久之计,因为蚯蚓不仅会越来越多,还会越来越长。每一秒,神刀手会在所有的蚯蚓中,准确地找到最长的那一只(如有多个则任选一个)将其切成两半。隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓。同一行中相邻的两个数之间,恰好用一个空格隔开。使用一个大根堆去维护所有的蚯蚓,但是这样做会超时。不难发现(反正我也是看题解才发现的),切开的新的蚯蚓是单调不增的。此外,除了刚刚产生的两只新蚯蚓,其余蚯蚓的长度都会增加。同一行中相邻的两个数之间,恰好用一个空格隔开。

2025-02-19 20:02:42 900

原创 每日一题010-堆-洛谷p2085最小函数值

有n个函数,分别为F1​F2​Fn​。定义Fi​xAi​x2Bi​xCi​x∈N∗。给定这些Ai​Bi​和Ci​,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个)。

2025-02-19 11:36:19 769

原创 每日一题009-对顶堆-洛谷p1186中位数

给定一个长度为N的非负整数序列A,对于前奇数项求中位数。

2025-02-15 16:24:38 1131

原创 每日一题008-二叉堆-洛谷p1090合并果子

在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n−1次合并之后, 就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为1。

2025-02-14 11:37:00 1016

原创 每日一题007-堆-洛谷p3378堆模版题

给定一个数列,初始为空,请支持下面三种操作:第一行是一个整数,表示操作的次数 nnn。接下来 nnn 行,每行表示一次操作。每行首先有一个整数 opopop 表示操作类型。对于每个操作 222,输出一行一个整数表示答案。输出 #1说明/提示【数据规模与约定】写一个小根堆的模版即可,也可以使用stl中的priority_queue,代码写起来更快。

2025-02-13 18:40:58 943

原创 每日一题006-离散化和哈希-洛谷p1955程序自动分析

为什么用快读是因为我看我的做法总时长1.17s,题解里面的做法三百多毫秒,不知道为什么差距这么大。的变量相等/不等的约束条件,请判定是否可以分别为每一个变量赋予恰当的值,使得上述所有约束条件同时被满足。那题很像,但是有问题,就是不等于的关系是不可以传递的。最后一个问题,显然不能开10^9的数组,所以要么使用离散化要么使用哈希,可以点击前置知识中的链接。应该先把所有的e=1的数据合并了,然后再判断e=0的数据。,这些约束条件显然是不可能同时被满足的,因此这个问题应判定为不可被满足。,表示需要判定的问题个数。

2025-02-12 22:52:10 1040

原创 每日一题005-并查集-洛谷p1196银河英雄传说

公元5801年,地球居民迁至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年,并开始向银河系深处拓展。宇宙历799年,银河系的两大军事集团在巴米利恩星域爆发战争。泰山压顶集团派宇宙舰队司令莱因哈特率领十万余艘战舰出征,气吞山河集团点名将杨威利组织麾下三万艘战舰迎敌。

2025-02-11 20:43:12 1263

原创 每日一题004-并查集-洛谷p1197星球大战

现在,反抗军首领交给你一个任务:给出原来两个星球之间的以太隧道连通情况以及帝国打击的星球顺序,以尽量快的速度求出每一次打击之后反抗军占据的星球的连通块的个数。某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球。的方式存图,大多数题解都是这么写的,但我觉得,我偷懒使用直接存边和邻接表的方式,代码写起来更简单。先假设全部摧毁了,看看有几个连通块,再倒着恢复节点,并记录连通块的数量。很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治着整个星系。

2025-02-10 19:21:24 995

原创 并查集c++实现代码

前置知识:树,也被称为不相交集合数据结构,是一种非常高效的数据结构,主要用于处理一些不相交集合的问题。它在解决等问题时尤为重要。并查集是由一片森林组成的,每棵树都是并查集的一个连通块。

2025-02-10 19:11:31 399

原创 链式前向星c++实现

链式前向星的代码与解释

2025-02-10 17:48:51 140

原创 每日一题003-种类并查集-洛谷p2024食物链

同层的x和y连通的意思是,x和y一定属于同一级的生物。而A层的x和B层的y连通的意思是x可以吃y,同理B层级的x(在代码中体现是x+n)和C层级的y(也就是y+2n)连通的话,也是代表x可以吃y,C层级和A层级同理。当id为2时,如果可以被反着吃掉,或者两个本身是同类,就说明这句话错了,cnt++,否则按照正确的吃法逻辑去连接。使用种类并查集,种类并查集是要分层的,这个题分了三层,用了三倍的空间。,我也是根据那个思路写出来的代码,看完题解还不太懂再来看我的思路。,这三类动物的食物链构成了有趣的环形。

2025-02-09 17:18:34 793

原创 每日一题002-并查集-洛谷p4185视频推荐

对边排序的好处是我们可以优先连接边权值大的边,然后把问题Q也排序,这样就可以使得,我们每次处理一个问题的时候,不需要再从零开始连接一片森林,而是可以接着上一个问题连接好的森林,继续连接,可以省去很多功夫,最后成功ac,最大的运行时间仅106ms。可以这样想,我把这棵树中权值小于k的边全部切断,这样这棵树就被分成了森林,用并查集维护,要想求节点v的推荐视频数量,是不是就是v所在的那个连通块(树)的总节点数减去自身。然而,FJ 担心会向他的奶牛推荐太多的视频,这可能会分散他们对产奶的注意力!

2025-02-09 00:47:31 1254

原创 每日一题001-并查集-洛谷p1525关押罪犯

这样目前分到的罪犯都没有仇恨值,直到处理数据的时候发现两个罪犯已经在同一个监狱中后,说明这个仇恨值就是最大的,因为比他大的仇恨值都拆开了不在一个监狱,所以是0,而比他小的仇恨值又没有意义了(求最大的仇恨值),也就是后面的数据不需要再处理了(前提是已经排序好了)。是的,实际上我应该把他们分在两个监狱中,但是我现在不需要操作,因为他们是新人,和别的罪犯都没有仇(根据目前的数据),所以是把罪犯一分在监狱1还是监狱2是没有意义的,只要罪犯一和罪犯二不在一个监狱就行,所以我暂时什么也不用干,你就当随便分了一个监狱。

2025-02-07 20:27:55 675 1

空空如也

空空如也

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

TA关注的人

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