30、最短路径:弗洛伊德(Floyd)算法与乘车费用最少的问题

你好,我是王健伟。 上节课我和你分享了用迪杰斯特拉(Dijkstra)算法求解最短路径。除此之外,还有一个求解最短路径的方法——佛洛依德(Floyd)算法。 那他们有什么不同吗? 如果说迪杰斯特拉算法比较适合一次性求某个顶点到其他各个顶点的最短路径信...

29、最短路径:迪杰斯特拉(Dijkstra)算法与选择最节省时间的行走路线问题

你好,我是王健伟。 前面我们讲解了用普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法来寻找连通图的最小生成树,从而解决诸如如何修路费用最少这样的问题。这次我和你分享图的第二个实际用途——最短路径。那么,什么是最短路径呢? 最短路径在带权图中,...

28、最小生成树:克鲁斯卡尔(Kruskal)算法与修路费用最少的问题

你好,我是王健伟。 上节课我带你实现了用普里姆算法寻找一个无向连通图的最小生成树,并且我们已经知道,普里姆算法比较适合顶点数比较少,边数比较多的图。 这节课我带你看一看另外一种寻找无向连通图最小生成树的方法——克鲁斯卡尔(Kruskal)算法。话不多...

27、最小生成树:如何用普里姆(Prim)算法解决修路费用最少的问题

你好,我是王健伟。 前面我们已经讲解了图的概念、图的存储结构以及图的遍历问题。那么你可能非常想知道图都有哪些具体的实际用途。这节课,我就和你分享图的第一个实际用途——最小生成树。 首先我们先一起看一看什么是最小生成树。 最小生成树前面我们曾经展示过生...

26、图:深度优先遍历(DFS)与广度优先遍历(BFS)

你好,我是王健伟。 上节课我们讲述了邻接矩阵、邻接表、十字链表、邻接多重表、边集数组共5种数据结构,解决了对图进行存储的问题。接下来的问题, 就是对图进行遍历了。 所谓图的遍历,就是指从图中任意一个顶点出发访遍图中其余顶点,且使每个顶点都被访问且只被...

145678243