会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Lord-Phantom-city
博客园
首页
新随笔
联系
订阅
管理
2023年1月10日
332. 重新安排行程
摘要: 通过图论的相关知识可知,题目的要求是通过已知条件建立一个欧拉通路,最常用的算法是Hierholzer算法。 Hierholzer算法 Hierholzer算法给出一种基于dfs寻找欧拉回路的算法 step 1: 选择一个合适的开始node, 对于无向图, 为一个度数为奇数的节点(如果所有点的度数为偶
阅读全文
posted @ 2023-01-10 20:10 Lord-Phantom-city
阅读(41)
评论(0)
推荐(0)
2023年1月7日
1658. 将 x 减到 0 的最小操作数
摘要: 太久没有写算法题而且算法底子本就薄弱导致这个题总感觉很熟悉却怎么也写不出的情况😞。 进入正文,本题就是一个滑动窗口问题,可以看成是一个连接好的和为$sum-x$的窗口,也可以看成首尾两部分共同组成的值为$x$的滑动窗口,所以采取滑动窗口算法即可解决,下面是官方代码: class Solution
阅读全文
posted @ 2023-01-07 16:30 Lord-Phantom-city
阅读(27)
评论(0)
推荐(0)
2022年8月15日
5. 最长回文子串
摘要: 求最长回文子串是一道经典问题,最经典的方法即为动态规划和中心扩展,复杂度都为$O(n)$,解法如下: 动态规划 用 $P(i,j)$表示字符串s的第i到j个字母组成的串$s[i,j]$是否为回文串: $$ P(i,j)= \begin{cases} true & s[i,j]为回文串 \ false
阅读全文
posted @ 2022-08-15 16:56 Lord-Phantom-city
阅读(43)
评论(0)
推荐(0)
2022年8月14日
4.寻找两个有序数组的中位数
摘要: 首先这个题目最容易想到的解决方法是把两个数组合并之后选出中位数,但是这样的时间复杂度为$O(m+n)$与题目的要求不符合,根据题目中的要求$O(log(m+n))$可以想到可能要采取二分的手段进行中位数的寻找,所以考虑不把两个数组合并,而是直接寻找中位数。 通过中位数的概念可知,对一个总长度为N的数
阅读全文
posted @ 2022-08-14 16:21 Lord-Phantom-city
阅读(38)
评论(0)
推荐(0)
2021年12月15日
二分法的应用
摘要: 从一个有序数组中查找某个值 这是二分法最常用到的地方,也即折半查找法,在C++的STL库中有相关的lower_bound和upper_bound函数进行实现。 下面用代码块来实现STL中的lower_bound: int n,k;//n为数组的大小,数组为a[0~n-1],k为要搜索的值 int a
阅读全文
posted @ 2021-12-15 15:51 Lord-Phantom-city
阅读(76)
评论(0)
推荐(0)
2021年12月13日
图的最小生成树
摘要: Prim算法 核心思想:贪心的将一个又一个点加入集合,而加入的每个点都尽可能使边权最小,这样可以使用STL的priority_queue来维护。 struct edge{int to,cost;};//to表示边的终点,cost表示权值 typedef pair<int,int> P;//P.fir
阅读全文
posted @ 2021-12-13 22:32 Lord-Phantom-city
阅读(32)
评论(0)
推荐(0)
图的最短路径问题
摘要: 单源最短路径问题 目的:求解一类给定起点,求其到其他点的最短路的问题 Bellman-Ford算法 核心思想:记从起点s出发到顶点i的最短距离为d[i],则有如下关系: \(d[i]=min{d[j]+cost(j->i)|e=(j,i) \in E}\) 若给定的图是一个DAG(有向无环图),可以
阅读全文
posted @ 2021-12-13 20:04 Lord-Phantom-city
阅读(60)
评论(0)
推荐(0)
2021年12月9日
并查集
摘要: 目的:实现对元素的分组与查找 代码实现: int par[MAX_N];//保存每个元素的父亲,父亲相同则组别相同 int rank[MAX_N];//树的高度 //初始化n个元素 void init(int n) { for(int i=0;i<n;i++) { par[i]=i; rank[i]
阅读全文
posted @ 2021-12-09 15:33 Lord-Phantom-city
阅读(32)
评论(0)
推荐(0)
2021年10月26日
目录
摘要: 写在前面 此分类用于总结我在算法学习中的所思所想,目的在于总结平时所学,并提供给需要帮助的朋友,涉及代码的部分都将使用C++编写。本人萌新一枚,希望各位大佬多带带qwq。 进入正题 下面将提供链接进入相关算法和数据结构的总结: 辅助数据结构 并查集 搜索与动态规划 0-1背包问题
阅读全文
posted @ 2021-10-26 19:50 Lord-Phantom-city
阅读(22)
评论(0)
推荐(0)
公告