摘要: • Prim算法是干什么的? Prim算法可以计算出一个无向加权图的最小生成树 • 什么是最小生成树? 首先,树两个最重要的性质是①用一条边连接树中的任意两点都会产生一个新的环②从树中删除一条边将会得到两棵独立的树,最小生成树即为连接图中所有点,且总权重最小的树。最小生成树的性质:将图中的点分为两个 阅读全文
posted @ 2017-09-16 19:49 zhangqi66 阅读(5245) 评论(0) 推荐(1) 编辑
摘要: • Kosaraju算法是干什么的? Kosaraju算法可以计算出一个有向图的强连通分量 • 什么是强连通分量? 在一个有向图中如果两个结点(结点v与结点w)在同一个环中(等价于v可通过有向路径到达w,w也可以到达v)它们两 个就是强连通的,所有互为强连通的点组成了一个集合,在一幅有向图中这种集合 阅读全文
posted @ 2017-09-09 11:29 zhangqi66 阅读(808) 评论(0) 推荐(1) 编辑
摘要: 上面用到的有向图(Digraph b) 阅读全文
posted @ 2017-09-06 13:17 zhangqi66 阅读(1310) 评论(0) 推荐(0) 编辑
摘要: 代码中的无向图 图的储存-邻接表示意图 阅读全文
posted @ 2017-08-23 10:50 zhangqi66 阅读(546) 评论(0) 推荐(0) 编辑
摘要: package practice; import java.security.Principal; import java.util.Scanner; import edu.princeton.cs.algs4.*; public class TestMain { public static void main(String[] args) { //50个随机数字 ... 阅读全文
posted @ 2017-08-09 15:33 zhangqi66 阅读(972) 评论(0) 推荐(0) 编辑
摘要: 插入图示(S,E,A,R,C,H,X,M,P对应5,1,18,3,8,20,13,16) 左旋转 右旋转 颜色转换 阅读全文
posted @ 2017-08-07 09:05 zhangqi66 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 算法动态演示 http://www.cs.usfca.edu/~galles/visualization/BST.html 阅读全文
posted @ 2017-08-01 15:17 zhangqi66 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 算法动画演示 http://www.cs.usfca.edu/~galles/visualization/HeapSort.html 阅读全文
posted @ 2017-07-27 18:00 zhangqi66 阅读(492) 评论(0) 推荐(0) 编辑
摘要: package practice; import edu.princeton.cs.algs4.StdRandom; public class TestMain { public static void main(String[] args) { int[] a = new int[20]; for (int i = 0; i 1 && a[k/2... 阅读全文
posted @ 2017-07-27 16:28 zhangqi66 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 算法示意图(图片来自《算法(第四版官网)》) 关于加权 给每个节点都赋一个权值,权值可以表示点在树的哪一层,根节点的权值最大,每向下一层权值递减一,最下层权值为一。所一可以通过比较根节点的权值,让层数少的树连在层数大的树上,使最后树的层数更少。 关于路径压缩 在找点的根节点时,直接将点连在根节点上, 阅读全文
posted @ 2017-07-27 14:25 zhangqi66 阅读(1184) 评论(0) 推荐(0) 编辑