- 博客(63)
- 收藏
- 关注
原创 Java ORM框架FastMybatis踩坑
问题:使用了FastmyBatis的saveOrUpdate方法,明明设置了主键的值且表中存在,但是依然执行insert操作。导致Duplicate PK。原因:使用了其他第三方包的注解指定表的主键,没有按照FastmyBatis本身指定主键的方式去做。
2024-07-06 17:27:15
294
原创 acwing 5575. 改变数值 | c++题解及解释
斐蜀定理:ax+by=d 对于整数a、b,一定存在整数x、y使得ax+by等于a和b的最小公倍数的倍数
2024-06-16 19:44:03
290
原创 简单剖析tRPC-Go中使用的第三方协程池ants
前置知识:我们想异步完成一个任务,首先创建一个任务,然后需要从协程池(PoolWithFunc)中获取worker(goWorkerWithFunc),假设目前队列为空,这时一个worker和一个goroutine会一起创建出来,可以认为他俩就是绑一起的,然后处理完这个任务后,处于当前goroutine中的worker会放入全局的队列中,等待被其他协程去获取这个worker。为什么说这个Goroutine可以重复执行传入的函数?
2024-06-16 19:41:58
1128
原创 力扣102. 二叉树的层序遍历(O(n)时间复杂度,通过queue实现简单BFS)
正常层序遍历,队列类型改一下就好:queueq; 记录节点及其层次。O(n)时间复杂度
2024-03-31 22:47:52
570
原创 力扣128.最长连续序列(简易代码、O(N)时间复杂度)
3、最后遍历一遍左端点列表,循环判断每个节点的右相邻节点是否存在(通过哈希表)记录该序列长度。2、然后遍历一遍哈希表,将所有左端点(左边不存在相邻节点)保存在一个列表,1、首先遍历一遍数组,用个哈希表存该节点(表示这个节点存在),
2024-03-31 02:04:26
474
原创 PostgreSQL索引篇 | TSearch2 全文搜索
postgres中的全文搜索(文本搜索)提供了一种可以检索出满足某个查询条件的自然语言文档的能力,并且还可以根据文档的相关性对文档进行排序。最常见的搜索是找出所有包含给出的查询词的文档,并且以它们符合查询的程度排序输出。
2024-03-11 13:04:55
2223
原创 PostgreSQL索引篇 | GiST索引
PostgreSQL版本为8.4.1(本文为《PostgreSQL数据库内核分析》一书的总结笔记,需要电子版的可私信我)
2024-03-10 16:42:55
2026
原创 PostgreSQL索引篇 | Hash索引
PostgreSQL版本为8.4.1(本文为《PostgreSQL数据库内核分析》一书的总结笔记,需要电子版的可私信我)
2024-03-10 16:17:50
2114
原创 PostgreSQL索引篇 | BTree
记录下《PostgreSQL数据库内核分析》书中的BTree索引。PostgreSQL版本为8.4.1(本文为《PostgreSQL数据库内核分析》一书的总结笔记,需要电子版的可私信我)
2024-02-23 22:53:56
2178
原创 go捕获代码调用栈帧-runtime.Caller()
在go中, zap 包的源码是通过runtime.Caller()相关方法去捕获代码调用的栈帧。我们可以利用他去日志打印一些方法的位置信息。
2024-02-23 18:13:56
658
原创 Mac通过ssh、https访问gitlab私有仓库
提示你保存 .ssh/id_rsa 的路径,这里直接 enter提示输入 passphrase,每次与 GitHub 通信都会要求输入 passphrase,以避免某些「失误」,建议输入添加key到ssh目录(示例为mac)复制文件内的公钥到gitlab的个人profile中的SSH KEYS中打开终端,进入项目目录中,进行配置用于将项目的依赖项复制到项目的vendor目录中,以便离线构建。这是在使用 Go 模块的项目中,通常在构建可执行文件或库之前执行的一个步骤。这有助于隔离和管理项目的依赖项。
2024-01-21 14:51:36
1631
1
原创 CLion进行远程/本地编译、GDB调试postgres(含阅读源码)
使用CLion分别在远程机centos和本机windows上进行编译、GDB调试postgres、阅读postgres源码
2023-07-14 02:52:38
1397
2
原创 HarmonyOS:Page内和Page间导航(Java代码解释)
整体框架:目标效果:一组相关页面(MainAbility)中的一个页面(MainAbilitySlice)中有两个按钮:点第一个按钮进入同一组相关页面(相同的MainAbility)的不同页面(不同的NewAbilitySlice),再点页面中的按钮回到原组相关页面(MainAbility); 点第二个按钮进入不同的一组相关页面(不同的SecondAbility)的不同页面(不同的SecondAbilitySlice),再点页面中的按钮回到原组相关页面(MainAbility)。各个部分理解:
2022-05-06 11:59:29
694
7
原创 迷宫问题(c++题解)bfs
迷宫问题时间限制: 1Sec 内存限制: 32MB 提交: 3085 解决: 722题目描述小明置身于一个迷宫,请你帮小明找出从起点到终点的最短路程。小明只能向上下左右四个方向移动。输入输入包含多组测试数据。输入的第一行是一个整数T,表示有T组测试数据。每组输入的第一行是两个整数N和M(1<=N,M<=100)。接下来N行,每行输入M个字符,每个字符表示迷宫中的一个小方格。字符的含义如下:‘S’:起点‘E’:终点‘-’:空地,可以通过‘#’:障碍,无法通过输
2022-04-05 18:56:39
601
原创 蓝桥杯 平面切分【第十一届】【省赛】【B组】c++题解
问题描述平面上有 N 条直线,其中第 i 条直线是 y=Ai⋅x+Bi。请计算这些直线将平面分成了几个部分。输入格式第一行包含一个整数 N。以下N行,每行包含两个整数 Ai,Bi。输出格式一个整数代表答案。样例输入31 12 23 3Data样例输出6Data评测用例规模与约定对于 50 的评测用例,1≤N≤4, −10≤Ai,Bi≤10。对于所有评测用例,1≤N≤1000, −100000≤Ai,Bi≤100000。思路:【1】
2022-02-25 16:00:46
935
原创 蓝桥杯 时间显示【第十二届】【省赛】【B组】c++题解
思路:忽略天数,直接计算小时,分钟,秒数#include<iostream>#include<algorithm>using namespace std;typedef unsigned long long ull;int main() { ull n; cin >> n;//输入的是毫秒 while (n > 86400000)//一天有86400000毫秒,直接忽略已过的天数 { n %= 86400000; } if (n..
2022-02-25 15:07:27
637
原创 蓝桥杯 递增三元组【第九届】【省赛】【B组】c++题解
给定三个整数数组 A = [A1, A2, ... AN], B = [B1, B2, ... BN], C = [C1, C2, ... CN], 请你统计有多少个三元组(i, j, k) 满足: 1. 1 <= i, j, k <= N 2. Ai < Bj < Ck输入格式 第一行包含一个整数N。 第二行包含N个整数A1, A2, ... AN。 第三行包含N个整数B1, B2, ... BN。 第四行包含N个整数C1, C2, .
2022-02-25 13:56:56
611
原创 全球变暖【第九届】【省赛】【B组】c++题解(bfs)
问题描述 你有一张某海域NxN像素的照片,"."表示海洋、"#"表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. ....... 其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。 由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。 例如上图中的海域
2022-02-25 00:08:33
479
原创 蓝桥杯 日志统计【第九届】【省赛】【B组】c++题解
题目:小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是: ts id 表示在ts时刻编号id的帖子收到一个"赞"。 现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。 具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭右开区间)收到不少于K个赞,该帖就曾是"热帖"。 给定日志,请你帮助小明统计出所有曾是"热帖"的帖子编号。输入格式
2022-02-24 22:16:45
335
原创 蓝桥杯 杨辉三角形【第十二届】【省赛】【B组】c++题解
题目:将杨辉三角的所有数从上到下,从左到右,排成一列,输入一个N,判断最早出现N是在第几个数。思路:因为“从上到下,从左到右”,因此从三角形中间划一条垂线,则N一定位于左边。然后,我们发现从右上到左下的每一条斜行(将全是1的情况暂时忽略)都存在这样的规律:【1】开头的数为C(2x,x),x从1开始递增,例如2是C(2,1),6是C(4,2)。。。【2】每一斜行的递增规律是C(2x++,x),例如6是C(4,2),10是C(5,2)。。。【3】我们可以发现例如数字6有两个,而我们想输出的是位置
2022-02-24 22:15:39
3221
空空如也
String.replace中'=='使用疑惑-常量池与堆
2022-09-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人