- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 邻接表的C++模板机制
建立ALGraph类ALGraph.h#ifndef ALGRAPH_H#define ALGRAPH_Hint visited[100];const int MaxSize=10;struct ArcNode //定义边表节点{ int adjvex; //临界点域 ArcNode * next; //指针域};template<cla...
2018-06-20 15:44:39 483
原创 无向图邻接矩阵转邻接表,邻接表转邻接矩阵
#include <stdio.h>#include <malloc.h>#include<iostream>using namespace std;typedef int InfoType;#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞...
2018-06-19 14:19:26 10078 1
原创 7-9 旅游规划
有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公路的条数;S是出发地的城市编号;D是目的地的城市...
2018-06-19 14:16:11 410
原创 7-10 公路村村通
现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤)和候选道路数目M(≤);随后的M行对应M条道路,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号以及该道路改建的预算成本。为简单起见,城镇从1到N编号。输出格式:输出村村通需要的最低成本。如果输入数据不足以保证畅通,则输出−,表...
2018-06-19 14:15:08 327
原创 7-11 关键活动
假定一个工程项目由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其它一些子任务后才能执行。“任务调度”包括一组子任务、以及每个子任务可以执行所依赖的子任务集。比如完成一个专业的所有课程学习和毕业设计可以看成一个本科生要完成的一项工程,各门课程可以看成是子任务。有些课程可以同时开设,比如英语和C程序设计,它们没有必须先修哪门的约束;有些课程则不可以同时开设,因为它们有先后的依赖关系,比...
2018-06-19 14:13:03 413
原创 7-7 六度空间
“六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始终是许多社会学家努力追求的目标。然而由于历史的原因...
2018-06-19 14:12:09 457
原创 简单邻接表的BFS和DFS
#include<stdio.h>#include<stdlib.h>#define MaxVex 255#define TRUE 1#define FALSE 0typedef char VertexType; //顶点类型typedef int Bool;Bool visited[MaxVex]; //全局数组,记录图中节点访问状态typ...
2018-06-19 14:09:00 588
原创 简单邻接矩阵的DFS和BFS
#include<stdio.h>#include<string.h>#define MAXN 10int visit[MAXN]; //设置一个访问标志数组int G[MAXN][MAXN]; //设置一个邻接矩阵void DFS(int i,int N) //深度优先遍历{ int j; visit[i]=1; print...
2018-06-19 14:05:54 650
原创 最短路径Dijkstra算法
#include<iostream>using namespace std;int a[100][100]; //邻接矩阵int book[10]= {0}; //book数组用来标记哪些点目前是最短的距离int dist[10]; //dist数组用来存储第一个顶点到其余顶点的最短距离const int inf=99999999; //假设这个数表示无...
2018-06-06 15:33:58 281
原创 最短路径Floyd算法
#include<iostream>using namespace std;int a[10][10]; //存储点与点之间的距离int n; //顶点数int e; //边数const int inf=999999999; //无穷大int x,y,z; //x到y的距离为zint i,j,k; //循环变...
2018-06-06 15:28:21 182
算法竞赛入门经典(第2版)
2018-05-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人