本项目为《公交线路图数据结构》课程设计,旨在通过代码实现公交线路图的相关算法与数据结构,包括但不限于站点信息管理、路线规划等模块。文件内含详细的设计文档及源代码。
参考《数据结构实践教程》P56章节内容,并在此基础上增加文件存储功能。所有站点消息、公交线路信息及其他相关数据均不得直接嵌入程序代码中,而是保存在外部文本段落件内。
具体要求如下:
1. 使用名为`stations.txt`的文本段落件来储存站点的信息,格式可以自行设计为:编号 站名;例如:
```
1 黄家湖西路武科大
2 黄家湖西路岐黄南路
3 黄家湖西路中医药大学
……
20 和平大道三角路
```
2. 使用名为`buses.txt`的文本段落件来储存公交线路的信息,格式可以自行设计为:编号 线路名 起点站编号 终点站编号;例如:
```
1 539上行 1 20
2 539下行 20 1
……
```
3. 使用名为`routes.txt`的文本段落件来储存公交线路站点之间的距离信息,格式可以自行设计为:线路编号 站点编号 站点编号 距离;例如:
```
1 1 2 650
1 2 3 400
……
```
上述数据含义分别为:
- `stations.txt`中的信息表示站点的名称及其对应的唯一标识。
- `buses.txt`中记录了公交线路的基本信息,包括编号、路线名以及起终点站的信息(通过站点编号来关联)。
- `routes.txt`则详细描述每条线路上各相邻两个站点之间的距离。
4. 设计并实现数据结构以支持从文件读取和处理上述三类文本中的所有数据,并将其加载到内存中以便后续操作使用;
5. 提供用户友好的菜单界面,让用户能够执行添加、删除或修改公交线路及站点信息的操作;需要注意各条记录间可能存在的关联性。
6. 在进行任何更改后,需将更新后的结果重新写回到对应的文本段落件里保存。
7. 其他查询功能参照《数据结构实践教程》P56章节中的相关描述来实现。