- 博客(5)
- 收藏
- 关注
原创 Prim和Kruskal算法
Prim算法 通过让边类实现comparable接口实现排序,treeSet可以排序并且去重 结点类 class Vertex { String name;// 顶点名称 Edge next;// 下一条边(第一个为顶点 后面都是边) public Vertex(String name) { this.name = name; } // 获取结点的出边 public TreeSet<Edge> outEdges() { //List<Edge>
2020-10-02 14:05:27 110 1
原创 并查集
并查集 public class UnionFind_QU_R_PC { int[] parents; int[] rank; public UnionFind_QU_R_PC(int capacity) { parents=new int[capacity]; for (int i = 0; i < parents.length; i++) { parents[i]=i; } rank=new int[capacity]; for (int i = 0; i &l
2020-10-02 12:55:41 106
原创 图的BFS DFS
图的BFS DFS /** * 广度优先搜索 * @param begin 开始的结点名称 */ public void bfs(String begin) { Vertex beginVertex = vertexMap.get(begin); if(beginVertex==null) return; HashSet<Vertex> set = new HashSet<>(); Queue<Vertex> queue=new Linke
2020-09-13 17:21:11 143 2
转载 图的邻接表构建
图的邻接表构建 详细描述(点击) public class GraphDemo{ Map<String,Vertex> vertexMap;//使用HashMap储存顶点 class Vertex{ String name;//顶点名称 Edge next;//下一条边(第一个为顶点 后面都是边) public Vertex(String name) { this.name = name; } } class Edge{ String name;//指向的
2020-09-13 09:59:36 188
转载 朴素算法和KMP
朴素算法和KMP算法 算法详细描述(点击) public class 朴素算法 { public static void main(String[] args) { String str = "BBC ABCDAB ABCDABCDABDE"; String target = "ABCDABD"; boolean res = method(str, target); System.out.println(res); } private static boolean method(St
2020-09-13 09:48:11 181
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人