算法
文章平均质量分 79
deep_keng
这个作者很懒,什么都没留下…
展开
-
图论(五)--强连通分量
基于算法导论图算法-强连通分量题目描述问题分析源代码结果截图题目描述求图的连通分量问题分析先对原图进行DFS,在根据结束时间的倒序对原图的转置进行DFS即可,具体证明可以参考算法导论第22章22.5节-强连通分量。伪代码及算法复杂度: 源代码Graph G_Transpose(Graph G);//求图的转置void strongly_connected_components(Grap原创 2017-05-01 21:47:08 · 412 阅读 · 0 评论 -
图论(六)--最小生成树
最小生成树kruskal和prime算法分别实现,基于算法导论原创 2017-05-11 14:07:46 · 360 阅读 · 0 评论 -
图论(七)--单源最短路
基于算法导论图算法-单源最短路(第24章)Dijkstra/Bellman-Ford两种算法实现原创 2017-05-11 23:32:37 · 351 阅读 · 0 评论 -
图论(四)--拓扑排序
拓扑排序(基于算法导论图算法)使用队列和DFS分别进行实现1、使用队列进行实现:不断寻找入度为0的点;2、使用DFS进行实现:DFS图后根据各顶点发现时间逆序排列,即可得到拓扑排序(证明可以看算法导论第22章22.3节拓扑排序)原创 2017-04-28 13:34:31 · 586 阅读 · 0 评论 -
图论(一)--图的建立
基于算法导论图算法-图的建立问题描述 问题分析 源代码结果截图问题描述随机创建一个100个顶点,大约2000条边的有向图以及大约1000条边的无向图,并可以输出每个点的入度和出度(使用邻接表表示)问题分析本问题我通过首先创建一个随机邻接矩阵,并将其存入文件中,然后从文件中读取信息建立图结构(与ACM题目吻合)难点在于图的数据结构(我使用C/C++进行实现)源代码#pragma once#原创 2017-04-27 19:52:56 · 5529 阅读 · 0 评论 -
图论(二)--广度优先搜索(BFS)
基于算法导论图算法-广度优先搜索题目描述问题分析源代码结果截图题目描述使用广度优先搜索遍历图: 输入:图G和源顶点s 输出:从s到所有顶点的最短距离问题分析广搜的思想类似水滴的扩散,在此不再赘述。本例中一开始所有节点为白色,进队列后变为灰色,出队列后变为黑色。伪代码源代码以下代码基于图论(一)–图的建立中代码创建的图G进行编写void BFS(Graph G, Vertex s);//原创 2017-04-27 20:37:40 · 934 阅读 · 0 评论 -
图论(三)--深度优先搜索(DFS)
基于算法导论图算法-深度优先搜索题目描述问题分析源代码结果截图题目描述深度优先搜索(用递归和栈分别实现):对图进行遍历,得到连通分支数,并求出每个顶点的发现时间和完成时间问题分析与广搜相同,每个顶点白色->灰色->黑色伪代码递归实现(栈实现伪代码未提供,可参见源代码)源代码void DFS(Graph G);//dfs图void DFS_VISIT(Graph G, Vertex u);原创 2017-04-27 21:29:36 · 1570 阅读 · 1 评论