蔡珏
码龄4年
关注
提问 私信
  • 博客:29,957
    29,957
    总访问量
  • 65
    原创
  • 532,208
    排名
  • 214
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2020-10-30
博客简介:

qq_52093121的博客

查看详细资料
个人成就
  • 获得54次点赞
  • 内容获得8次评论
  • 获得62次收藏
  • 代码片获得211次分享
创作历程
  • 2篇
    2023年
  • 36篇
    2022年
  • 31篇
    2021年
成就勋章
TA的专栏
  • redis
    1篇
  • 计算几何
    2篇
  • 容斥
  • 线段树
    7篇
  • 贪心
  • 位运算
  • 单调队列
    1篇
  • 模板
  • 补题
    13篇
  • 算法和数据结构
    8篇
  • 二分
    4篇
  • 图论
    18篇
  • 搜索
    2篇
  • 数学
    6篇
  • 动态规划
    17篇
  • 笔记
    1篇
  • c++学习
    1篇
兴趣领域 设置
  • 数据结构与算法
    排序算法
  • 人工智能
    集成学习
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

使用lua脚本操作redis

:监视一个或多个键,如果在事务执行之前被修改,则事务被打断。缺点:乐观锁实现,所以失败需要重试,增加业务逻辑的复杂度,所以一般使用第二种方法。redis 能确保事务执行前后的数据的完整约束。事务是一个不可分割的工作单位,事务中的操作要。事务的前后,所有的数据都保持一个一致的状态,DISCARD:取消一个事务,放弃执行事务中的所有命令。中的某个命令在执行期间出现了错误,整个事务也会继续执行。这里的一致性是指预期的一致性。下去,直到将事务队列中的所有命令都执行完毕为止。MULTI:标记一个事务的开始。
原创
发布博客 2023.07.25 ·
954 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

红黑树的原理及代码实现

红黑树的原理这篇博文讲解的很详细了,不熟悉红黑树的定义可以看看:红黑树的详细原理讲解咱们直接进入代码实现讲解:创建一棵红黑树,先从创建红黑树的节点开始:1.红黑树首先是一个二叉树,所以需要一个左儿子节点的指针,右儿子节点的指针2.红黑树是有BALCK和RED两种颜色的,所以每个节点应该有颜色3.红黑树是Key-Value存储的4.因为之后要进行旋转等调整,所以还需要一个父节点的信息所以红黑树节点定义如下:2.创建红黑树整体结构红黑树有五个性质:为了方便整棵红黑树的维护,我们默认叶子节点是空
原创
发布博客 2023.06.28 ·
1220 阅读 ·
4 点赞 ·
0 评论 ·
21 收藏

最大流判定(星际转移问题)

一种方式是坐公交车,从一个站点到另一个站点,那么就可以根据每辆公交车的路线来建边,假设某一辆公交车最开始在第 0 个站点,然后依次开往第 2 个站点,再开往第 5 个站点,那么先从第 0 天的第 0 个站点向第 1 天的第 2个站点连一条边,再从第 1 天的第 2 个站点向第 3 天的第 5 个站点连一条边,容量都是这个公交车的人数上限,其他路线依次类推。可以发现可行解中每个人行走的方式都能对应到流网络中的某一条边,只需要根据该方式移动的人数来设置对应的边的流量,就能得到对应的可行流,反过来同理。
原创
发布博客 2022.11.15 ·
357 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

acwing 恨7不成妻

注意完全平方公式的推导。
原创
发布博客 2022.10.22 ·
135 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

有汇源上下界最大流和最小流

代码】有汇源上下界最大流。
原创
发布博客 2022.08.11 ·
93 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

无源汇上下界可行流

代码】无源汇上下界可行流。
原创
发布博客 2022.08.10 ·
130 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

最大流圆桌问题(二分图多重匹配问题)

考虑建图,设置源点S为0,汇点T为n+m+1,源点向所有单位连其容量的边,每个单位向圆桌连1的边,每个圆桌向源点连圆桌的容量的边,可知符合网络流的容量限制和流量限制,其最大流就是合法方案之一。...
原创
发布博客 2022.08.10 ·
130 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

树链剖分模板

代码】树链剖分模板。
原创
发布博客 2022.08.07 ·
138 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Hierholzer算法dfs找欧拉回路模板

代码】dfs找欧拉回路模板。
原创
发布博客 2022.08.02 ·
281 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

杭电计算几何

代码】杭电计算几何。
原创
发布博客 2022.07.27 ·
80 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

tarjan求强连通分量

原理看:1推导过程看:2模板
原创
发布博客 2022.07.05 ·
126 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

daimayuan 三进制循环(树形dp)

题目传送门这个题目比较简单,思路一下就出来了。维护两个dp,dp1和dp2:dp,dp1和dp2:dp,dp1和dp2:dp1[i]:以点i为起点以及子树符合取模递增的最大长度dp1[i]:以点i为起点以及子树符合取模递增的最大长度dp1[i]:以点i为起点以及子树符合取模递增的最大长度dp2[i]:以点i为起点以及子树符合取模递减的最大长度dp2[i]:以点i为起点以及子树符合取模递减的最大长度dp2[i]:以点i为起点以及子树符合取模递减的最大长度答案就是:ans=max(ans,Σ(dp1
原创
发布博客 2022.05.21 ·
126 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

二维偏序问题应用(二维数点)

二维偏序问题的数学解答将二维数点问题转移为二维偏序问题来做,CDQ分治主席树也可以做,但是本人太菜,只会树状数组做法:无需离散化写法:(注意询问数组开四倍,树状数组0没有意义+1)例题:园丁的烦恼#include <bits/stdc++.h>using namespace std;#define x first#define y second# define rep(i,be,en) for(int i=be;i<=en;i++)# define pre(i,be,en
原创
发布博客 2022.05.12 ·
536 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

CF一个远古时期的计算几何题(正多边形)

第一次正式写计算几何,知道了fmod这个东西,知道了外接圆的圆心角的最小份由以三角形三条边每个弦为圆心角的最大公约数。看带佬的题解:详细的题解原题链接#include <bits/stdc++.h>using namespace std;#define x first#define y second# define rep(i,be,en) for(int i=be;i<=en;i++)# define pre(i,be,en) for(int i=be;i>=en;
原创
发布博客 2022.05.09 ·
166 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

CF一个远古时期的计算几何题(正多边形)

第一次正式写计算几何,知道了fmod这个东西,知道了外接圆的圆心角的最小份由以三角形三条边每个弦为圆心角的最大公约数。看带佬的题解:详细的题解原题链接#include <bits/stdc++.h>using namespace std;#define x first#define y second# define rep(i,be,en) for(int i=be;i<=en;i++)# define pre(i,be,en) for(int i=be;i>=en;
原创
发布博客 2022.05.09 ·
166 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

并查集。。

题目链接我的另外的解LCA倍增思想其实只要并查集维护成森林每个树都是单色的,同色有边就连在一个连通集里面,查询时,如果两个点在同一个树,而且树颜色符合查询的颜色,或者两个点不在同一个树上,必定是经过了查询的颜色的/********************************************************************* 程序名: 版权: Joecai 作者: Joecai 日期: 2022-05-04 21:00 说明:***
原创
发布博客 2022.05.04 ·
197 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

倍增LCA受到启发的一题

倍增过程中可以吧,这里的 fa数组可以推广一下,保存每个点往根方向的路径上各个边/点的性质。常见的维护值有路径长度(树上求最短路)以及点的特殊性质(比如本题中各个农场的奶牛种类)等。这里维护的数组dp[i,j,op](op=1或者op=0)dp[i,j,op] (op=1或者op=0)dp[i,j,op](op=1或者op=0)维护的是i点往树根方向走2j步经过没经过opi点往树根方向走2^j步经过没经过opi点往树根方向走2j步经过没经过op转移方程为:dp[i,j,op]∣=(dp[i,j−1,o
原创
发布博客 2022.05.04 ·
166 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

倍增在线求LCA

acwing祖孙询问倍增求最近公共祖先,实际上是对暴力的优化(向上标记法)我们来看看向上标记法的实现://预处理每个结点的深度,以及结点的父结点的编号void dfs(int u, int father){ depth[u]=depth[father]+1; fa[u]=father; for(int i=h[u];~i;i=ne[i]){ int v=e[i]; if(v!=father) dfs(v,u); }}//求u和v的
原创
发布博客 2022.05.04 ·
150 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Tarjan算法求LCA(最近公共祖先)

acwing祖孙询问此题用倍增在线查询更好,我只是练练Tarjan算法的手,倍增时间复杂度为O(nlongn),查询O(logn),tarjan离线lca算法O(n+q)O(nlong_n),查询O(log_n),tarjan离线lca算法O(n+q)O(nlongn​),查询O(logn​),tarjan离线lca算法O(n+q)Tarjan算法原理:这个博客写的很好#include<bits/stdc++.h>using namespace std;const int N=4e4+
原创
发布博客 2022.05.03 ·
631 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

no crossing 代码源div1每日一题(区间dp)

no crossing大佬题解/********************************************************************* 程序名: 版权: Joecai 作者: Joecai 日期: 2022-05-01 20:13 说明:*********************************************************************/#include <bits/stdc++.
转载
发布博客 2022.05.01 ·
287 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多