首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
算法
JYuXuAN
创建于2022-01-28
订阅专栏
1、AcWing算法基础课,随练随写
暂无订阅
共9篇文章
创建于2022-01-28
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
匈牙利算法:二分图的最大匹配
假设n1是男生数量,n2是女生数量,匈牙利算法求二分图的最大匹配数,即求男生与女生最大匹配数 题目思路 match[b] = a,女生b匹配的男生是a st[i],i在本轮遍历中是否已匹配 遍历每个男
染色法判定二分图
二分图的重要性质:①一定不包含奇数环。②可能不是连通图 通过染色法判断,环中节点交替被染两种颜色,若产生矛盾,则不是连通图 解题思路 color[i] = {0, 1, 2},i可以被染成两种颜色,1
Kruskal算法求最小生成树
Kruskal算法首先将所有边权从小到大排序,循环枚举边,若该边的端点a和b不连通,则将ab边加入集合中去。判断是否连通的方法使用并查集 题目思路 将边权进行从小到大排序,因为要求最小生成树,确保最小
Prim算法求最小生成树
创建已连通部分的节点集合,Prim算法采用贪心的策略,每次将距离集合边权最小的点加入集合当中,迭代n次,最后将所有的点都连通起来。 题目思路 数组声明: dist[i]:节点i距离集合的最短距离。 s
Floyd求最短路
之前一直以为Floyd就是普通的三重循环暴力,今天才懂蕴含着动态规划的思想 题目思路 g[k][i][j]数组含义:从1到k的节点作为中间经过的节点时,从i到j的最短路径长度。 状态转移方程 g[k]
spfa判断负环
题目思路 与SPFA求最短路径不同,SPFA判断负环需要一个记录最短边数的cnt数组,并在初始时将所有点入队 将所有点入队,因为不能够确定从1开始出发,一定能走到负环里,题目要求判断整个图是否存在负环
spfa求最短路
题目思路 SPFA算法是对Bellman-ford算法的优化,Bellman-ford算法在内循环中循环m次。而在SPFA中,使用临界表的方式存储图,每次只更新同一个点的其他出边,如果距离变小则将点加
bellman-ford有边数限制的最短路
题目思路 本题与Dijkstra算法的最大区别:1、存在负权回路。2、最多经过k条边。 Dijkstra算法无法解决存在负权的最短距离问题,具体原因可以看此篇文章,给出了详细步骤。https://ww
朴素Dijkstra算法求最短路
题目思路 数组声明: 初始赋值。dist和g数组均为距离,赋最大值0x3f,表示无穷大,点与点之间不可达;dist[1]=0,第一个点与自身之间无距离。 dijkstra需要在最外层循环n-1次,目的