- 博客(257)
- 收藏
- 关注
原创 二分查找题型总结
二分查找之:找到第一个大于target的下标,找到第一个小于target的下标,找到第一个等于target的下标,找到最后一个等于target的下标
2024-01-07 15:35:38 467
原创 归并排序之确定递归层数
给定一维int型数组a[0,1,…,n-1], 使用归并排序方法, 对其进行从小到大排序, 请输出递归过程中自顶自下第三层的排序结果, 其中最顶层为第一层, 即最终的排序结果层.归并排序划分请按a[0,mid=(0+n-1)/2], a[(0+n-1)/2+1, n-1]进行划分子问题.每行输入的第一个数为int型正整数n (8
2023-11-10 14:20:15 207
原创 最小生成树,Kruskal算法
最小生成树(Minimum Spanning Tree,简称 MST)是一个连通图的子图,它包含图中的所有节点,并且是一个树(无环连通图),同时保证连接所有节点的边的权重之和最小。在一个带权重的连通图中,有许多不同的方式可以连接所有节点,但最小生成树的概念强调的是选择最小权重的边,以使整个树的总权重最小。有两种常见的算法用于求解最小生成树问题:Prim 算法和 Kruskal 算法。
2023-08-16 11:29:16 76
原创 并查集的两种优化:路径压缩和按秩合并(两个优化方式可以一起使用)
当涉及并查集数据结构时,路径压缩和按秩合并是两种常用的优化技术,它们都旨在提高并查集操作的效率。
2023-08-15 19:59:08 767
原创 dijkstra算法相关(使用邻接表和优先队列两种方法)力扣题
其实dijkstra算法(邻接表版本)对有向图和无向图使用起来都是一样的,没有区别。我之前会想如果我把[0,3,2]中的0和3调换会不会情况不一样,答案是不会的。因为在建邻接表的时候,就把双向的距离给设置好了,如果调换顺序,不过是从另一个点出发,距离仍然一样,并且也不用担心重复访问的问题,因为使用了visited数组来区分。
2023-08-04 19:05:28 460
原创 力扣320. 列举单词的全部缩写
单词的广义缩写词可以通过下述步骤构造:先取任意数量的 不重叠、不相邻 的子字符串,再用它们各自的长度进行替换。例如,“abcde” 可以缩写为:“a3e”(“bcd” 变为 “3” )“1bcd1”(“a” 和 “e” 都变为 “1”)“5” (“abcde” 变为 “5”)“abcde” (没有子字符串被代替)“23”(“ab” 变为 “2” ,“cde” 变为 “3” )是无效的,因为被选择的字符串是相邻的。
2023-08-01 15:06:10 382
原创 力扣959. 由斜杠划分区域
这题我看了一个题解,就是把每一个1x1的小方格还要分成上下左右四个三角形块,给这些三角形编上编号后,通过并查集,把需要合并的块变成连通块,最后计算连通块的个数,也就是区域个数。这些字符会将方块划分为一些共边的区域。表示为一个字符串数组,返回 区域的数量。请注意,反斜杠字符是转义的,因此。
2023-07-21 17:56:36 81
原创 291. 单词规律 II(plus题)
给你一种规律pattern和一个字符串s,请你判断s是否和pattern的规律相匹配。如果存在单个字符到 非空 字符串的 双射映射 ,那么字符串s匹配pattern,即:如果pattern中的每个字符都被它映射到的字符串替换,那么最终的字符串则为s。双射 意味着映射双方一一对应,不会存在两个字符映射到同一个字符串,也不会存在一个字符分别映射到两个不同的字符串。
2023-07-19 16:08:10 613
原创 [动态规划]下载插件中关于dp[(i+1)/2]+1的理解
小扣打算给自己的 VS code 安装使用插件,初始状态下带宽每分钟可以完成 1 个插件的下载。注意:实际的下载的插件数量可以超过 n 个。
2023-03-09 18:53:34 133
原创 用colab跑项目代码但是需要的环境是python3.6时,需要配置python3.6的环境
用colab跑项目代码但是需要的环境是python3.6时,需要配置python3.6的环境
2023-02-08 23:13:31 2794 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人