信息:
现有一个景区,景区里面有若干个景点,景点之间满足以下条件:
(1) 某些景点之间铺设了道路(相邻)
(2) 这些道路都是可以双向行驶的(无向图)
(3) 从任意一个景点出发都可以游览整个景区(连通图)
开发景区信息管理系统,对景区的信息进行管理。使用图的数据结构来保存景区景点信息,为用户提供创建图、查询景点信息、旅游景点导航、搜索最短路径、铺设电路规划等功能。

(1) 景点信息:景点编号、名字和介绍
编号 名字 介绍
0 A区 ……
1 B区 ……
2 C区 ……
3 D区 ……
4 E区 ……
5 F区 ……
6 G区 ……
(2) 道路信息:景点1,景点2、两个景点之间的距离。
景点1 景点2 距离(m)
A C 700
A E 1000
A F 600
B C 1000
B G 1000
C D 400
D E 300
D G 400
E F 600
F G 500
(1) 读文件创建图
输入:从Vex.txt文件中读取景点信息,从Edge.txt文件中读取道路信息。
处理:根据读取的景区信息创建景区景点图。
1、数据格式
Vex.txt每一行记录一个点的信息,格式为:“景点编号,景点名字,景点介绍”(景点编号从0开始逐个加1)
文件示例如下:

Edge.txt每一行记录一条边的信息,格式为:“景点1的编号,景点2的编号,道路的长度”(字段用中文逗号分割)若文件没有某两个点的信息,则表示这两个点之间没有直接路径。
文件示例如下:

使用Java语言采用邻接表存储:
点的定义:
public class Node {
private int num;//景点编号
private String name;//景点名字
private String info;//景点介绍
private Edge nextEdge;//指向第一条边邻接边
}
边的定义:
public class Edge {
private Node front;//边的前顶点即路径出发点
private Node back;//边的后顶点即路径终点
private int weight;//边的权重即路径长度

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



