
数据结构与算法
慢慢走才能走很远
Coder
展开
-
图结构浅谈之广度优先遍历
算法思想:图的广度优先遍历类似于树的广度优先遍历,与树不同的是图中可能存在环,所以需要用visited进行标记。其中最重要的操作是对边结点引出结点的检测、访问、入队操作。void BFS(int v, ALGraph *G) { ArcNode *p; int queue[MAXSIZE], front = 0, rear = 0; //初始化队列 vi...原创 2018-12-14 16:56:15 · 178 阅读 · 0 评论 -
图结构浅谈之prim算法
prim算法(基于贪心的算法)#define n 10 //图中顶点的个数#define INF 100000000 //无穷大void prim(float MGraph[][n],int v0,int &sum) { int v, k, min; //v执行需要插入的结点,k执...原创 2018-12-14 16:57:19 · 241 阅读 · 2 评论 -
图结构浅谈之深度优先遍历
//图的深度优先遍历void DFS(int v, ALGraph *G) { visited[v] = true; printf("%d ", G->adjlist[v].data); //访问 ArcNode *p = G->adjlist[v].first; //深度遍历 while (p!=NULL) ...原创 2018-12-14 16:59:47 · 240 阅读 · 0 评论 -
图结构之拓扑排序(判断图中是否存在环)
//图的拓扑排序(使用改进过的顶点结点,添加一个入度域)bool topsort(ALGraph2* G) { int i, j, n; //n用来计数(还可以用来判断图中是否存在环) int stack[MAXSIZE], top = -1; //用来存放入度为0的顶点 ArcNode *p; //将入度为...原创 2018-12-14 17:03:38 · 1399 阅读 · 0 评论