图论
文章平均质量分 77
GKHack
这个作者很懒,什么都没留下…
展开
-
数据结构实验3(图的DFS和BFS实现)
实现邻接矩阵和邻接表两种不同存储结构上实现图的基本运算, 在MGraph类中扩充增加DFS()和BFS()函数.包含的运算: 插入一条边, 删除一条边, 查询边是否存在, 图的深度优先搜索和广度优先搜索.广度优先搜索利用队列作为辅助的数据结构, 元素类型是树的结点. 实现代码:#include "iostream"#include "cstdio"#include "cstri原创 2015-12-13 17:51:09 · 3468 阅读 · 0 评论 -
数据结构实验3(飞机最少环城次数问题)
使用图算法解决应用问题: 设有n个城市, 编号为0 ~ n - 1, m条航线的起点和终点由用户输入提供. 寻找一条换乘次数最少的线路方案.使用有向图表示城市间的航线, 只要两城市之间有航班, 则图中这两点间存在一条权为1的边. 用Dijkstra算法实现求最少换乘次数.在MGraph类中增加Choose函数以及Dijkstra函数即可.实现代码:#include "iostrea原创 2015-12-13 18:14:17 · 3797 阅读 · 0 评论 -
拓扑排序的实现_TopoSort
拓扑排序是求一个AOV网(顶点代表活动, 各条边表示活动之间的领先关系的有向图)中各活动的一个拓扑序列的运算, 可用于测试AOV网络的可行性.整个算法包括三步:1.计算每个顶点的入度, 存入InDegree数组中.2.检查InDegree数组中顶点的入度, 将入度为零的顶点进栈.3.不断从栈中弹出入度为0的顶点并输出, 并将该顶点为尾的所有邻接点的入度减1, 若此时某个邻接点的原创 2015-12-14 23:55:07 · 2692 阅读 · 0 评论 -
图的邻接矩阵实现_MGraph
邻接矩阵有两种, 不带权图和网的邻接矩阵. 不带权图的邻接矩阵元素为0或1, 网的邻接矩阵中包含0, INF, 和边上的权值, 权值类型T可为整型, 实型. 三元组(u, v, w)代表一条边, u, v是边的两个定点, w表示u v的关系: a[u][u] = 0, 两种邻接矩阵的主对角元素都是0. a[u][v] = w, 若 在E中, 则w = 1(不带权图)或w = w(i, j)原创 2015-12-08 09:11:28 · 5055 阅读 · 0 评论 -
图的邻接表实现_LGraph
邻接表是图的另一种有效的存储表示方法. 每个顶点u建立一个单链表, 链表中每个结点代表一条边, 为边结点. 每个单链表相当于邻接矩阵的一行.adjVex域指示u的一个邻接点v, nxtArc指向u的下一个边结点. 如果是网, 增加一个w域存储边上的权值.构造函数完成对一维指针数组a的动态空间存储分配, 并对其每个元素赋初值NULL. 析构函数首先释放邻接表中所有结点, 最后释放一维原创 2015-12-08 09:48:31 · 4408 阅读 · 0 评论