
图
图
I am jack
go ahead
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
图问题中动态规划的应用
图问题中动态规划的应用 阅读本文前要求读者对每个问题的描述都有了解,这里只提供实现方法 文章目录图问题中动态规划的应用一.多段图最短路径问题二.多源最短路径算法---Floyd算法三.TSP问题1.状态转移方程2.例子讲解 一.多段图最短路径问题 那么这里呢我们就不写输入了,数据存储到数组里面就可以了 代码: import org.junit.Test; import java.util.ArrayList; import java.util.List; public class Main {原创 2020-06-06 16:29:08 · 901 阅读 · 0 评论 -
最小生成树算法---Prim算法和Kruskal算法
最小生成树算法—Prim算法和Kruskal算法 最小生成树的两种方法:Kruskal算法和Prim算法原创 2020-05-20 23:57:22 · 194 阅读 · 0 评论 -
最短路径算法---狄杰斯特拉算法
最短路径算法—狄杰斯特拉算法 一.介绍 这是一种按照路径长度递增的次序产生最短路径的算法,采用的是贪心的思想,对带权图(有向和无向均可)寻找最短路径;该算法对于不含负权的网来说,是目前已知的最快的单源最短路径算法,时间复杂度为o(n^2) 二.算法介绍与代码实现 首先我们看以这张图为例: 该图的领接矩阵表示为: 1.首先我们需要三个数组(数组下标从1开始) mark:用来标记单源顶点(我们这里取为顶点1)到该顶点的最短路径是否已经求到了 dist:标志单源顶点到该顶点的最短路径长度 path:表示到该节原创 2020-05-20 22:03:03 · 2754 阅读 · 1 评论 -
利用栈+入度实现拓扑排序
利用栈+入度实现拓扑排序 class Solution { Stack<Integer> stack = new Stack<Integer>(); boolean flag[] ; int []result; Map<Integer,List<Integer>> map =new HashMap<Integ...原创 2020-04-09 23:24:17 · 520 阅读 · 0 评论 -
利用DFS+栈实现拓扑排序
利用DFS+栈实现拓扑排序 在DFS过程中,一直到达最底部时,将其入栈,递归出来后再将当前节点入栈 class Solution { Stack<Integer> stack = new Stack<Integer>(); boolean flag[] ; int []result; Map<Integer,List<Inte...原创 2020-04-09 23:22:57 · 890 阅读 · 0 评论 -
DFS判断有向图是否存在环
DFS判断有向图是否存在环 对一个节点有三种情况,还未访问,正在访问,访问结束 我们用0,1,-1,正在访问表示还在递归中未出来,如果相连节点都正在访问 说明在DFS过程中一条道路上访问了两次同一个节点,这说明有环 下面用代码实现 class Solution { public boolean canFinish(int numCourses, int[][] prerequisites)...原创 2020-04-09 22:52:08 · 1921 阅读 · 0 评论 -
图的常用表示方法
图的常用表示方法转载 2020-04-07 22:37:19 · 777 阅读 · 0 评论 -
BFS遍历图
BFS遍历图(仅为个人笔记,看不懂莫怪) import javafx.util.Pair; import org.junit.Test; import java.util.*; class Node { public int val; public List<Node> neighbors; public Node() { val = 0; ...原创 2020-04-07 14:07:51 · 197 阅读 · 0 评论 -
克隆图
克隆图 class Node { public int val; public List<Node> neighbors; public Node() { val = 0; neighbors = new ArrayList<Node>(); } public Node(int _v...原创 2020-04-07 13:12:53 · 125 阅读 · 0 评论