写力扣时自己的笔记
文章平均质量分 57
力扣题
chnyi6_ya
小菜鸟想变强
展开
-
一些写leetcode的笔记
lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回.end()。upper_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于num的数字,找到返回该数字的地址,不存在则返回.end()。x除以2 可以通过x>> 1(x右移一位得到),x除以2的余数可以通过 x& 1得到。令 y=x & (x−1),则 y 为 将x的最末位的1改成0的数字。原创 2024-09-14 13:46:46 · 980 阅读 · 0 评论 -
二分查找题型总结
二分查找之:找到第一个大于target的下标,找到第一个小于target的下标,找到第一个等于target的下标,找到最后一个等于target的下标原创 2024-01-07 15:35:38 · 568 阅读 · 0 评论 -
位运算相关总结
a ^ b或者说a异或b的作用:得到两数相加不进位的结果的作用:可以计算 两数相加的进位。原创 2023-08-22 15:02:37 · 221 阅读 · 0 评论 -
反转链表(C++)
【代码】反转链表(C++)原创 2023-08-21 22:59:31 · 1641 阅读 · 0 评论 -
最小生成树,prim算法
Prim算法和Kruskal算法都是用于解决最小生成树问题的经典算法,它们在不同情况下有不同的适用性和特点。原创 2023-08-16 17:52:21 · 130 阅读 · 0 评论 -
最小生成树,Kruskal算法
最小生成树(Minimum Spanning Tree,简称 MST)是一个连通图的子图,它包含图中的所有节点,并且是一个树(无环连通图),同时保证连接所有节点的边的权重之和最小。在一个带权重的连通图中,有许多不同的方式可以连接所有节点,但最小生成树的概念强调的是选择最小权重的边,以使整个树的总权重最小。有两种常见的算法用于求解最小生成树问题:Prim 算法和 Kruskal 算法。原创 2023-08-16 11:29:16 · 123 阅读 · 0 评论 -
[动态规划]下载插件中关于dp[(i+1)/2]+1的理解
小扣打算给自己的 VS code 安装使用插件,初始状态下带宽每分钟可以完成 1 个插件的下载。注意:实际的下载的插件数量可以超过 n 个。原创 2023-03-09 18:53:34 · 195 阅读 · 0 评论 -
并查集的两种优化:路径压缩和按秩合并(两个优化方式可以一起使用)
当涉及并查集数据结构时,路径压缩和按秩合并是两种常用的优化技术,它们都旨在提高并查集操作的效率。原创 2023-08-15 19:59:08 · 1156 阅读 · 0 评论 -
dijkstra算法相关(使用邻接表和优先队列两种方法)力扣题
其实dijkstra算法(邻接表版本)对有向图和无向图使用起来都是一样的,没有区别。我之前会想如果我把[0,3,2]中的0和3调换会不会情况不一样,答案是不会的。因为在建邻接表的时候,就把双向的距离给设置好了,如果调换顺序,不过是从另一个点出发,距离仍然一样,并且也不用担心重复访问的问题,因为使用了visited数组来区分。原创 2023-08-04 19:05:28 · 545 阅读 · 0 评论 -
力扣320. 列举单词的全部缩写
单词的广义缩写词可以通过下述步骤构造:先取任意数量的 不重叠、不相邻 的子字符串,再用它们各自的长度进行替换。例如,“abcde” 可以缩写为:“a3e”(“bcd” 变为 “3” )“1bcd1”(“a” 和 “e” 都变为 “1”)“5” (“abcde” 变为 “5”)“abcde” (没有子字符串被代替)“23”(“ab” 变为 “2” ,“cde” 变为 “3” )是无效的,因为被选择的字符串是相邻的。原创 2023-08-01 15:06:10 · 443 阅读 · 0 评论 -
力扣959. 由斜杠划分区域
这题我看了一个题解,就是把每一个1x1的小方格还要分成上下左右四个三角形块,给这些三角形编上编号后,通过并查集,把需要合并的块变成连通块,最后计算连通块的个数,也就是区域个数。这些字符会将方块划分为一些共边的区域。表示为一个字符串数组,返回 区域的数量。请注意,反斜杠字符是转义的,因此。原创 2023-07-21 17:56:36 · 108 阅读 · 0 评论 -
291. 单词规律 II(plus题)
给你一种规律pattern和一个字符串s,请你判断s是否和pattern的规律相匹配。如果存在单个字符到 非空 字符串的 双射映射 ,那么字符串s匹配pattern,即:如果pattern中的每个字符都被它映射到的字符串替换,那么最终的字符串则为s。双射 意味着映射双方一一对应,不会存在两个字符映射到同一个字符串,也不会存在一个字符分别映射到两个不同的字符串。原创 2023-07-19 16:08:10 · 638 阅读 · 0 评论
分享