|
|
@ -87,6 +87,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
##概要设计
|
|
|
|
##概要设计
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
基于邻接表和邻接矩阵的地铁线路推荐系统,能够根据用户的起点和终点,推荐最佳出行线路,并计算预估消费。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##详细设计
|
|
|
|
|
|
|
|
|
|
|
|
1.首先定义了几个结构体,包括表示地铁线路的节点(edgenode)、地铁站点(vexnode)和线路列表(list)。然后定义了一个全局变量nm,它是一个线路列表。
|
|
|
|
1.首先定义了几个结构体,包括表示地铁线路的节点(edgenode)、地铁站点(vexnode)和线路列表(list)。然后定义了一个全局变量nm,它是一个线路列表。
|
|
|
|
2. createfile()函数是用于创建一个名为"address.txt"的文件,并向其中输入地铁站点的名称。
|
|
|
|
2. createfile()函数是用于创建一个名为"address.txt"的文件,并向其中输入地铁站点的名称。
|
|
|
|
3. creatnode()函数是用于初始化地铁站点的数据,它从"address.txt"文件中读取地铁站点的名称,并将这些数据存储在nm.adjust数组中。
|
|
|
|
3. creatnode()函数是用于初始化地铁站点的数据,它从"address.txt"文件中读取地铁站点的名称,并将这些数据存储在nm.adjust数组中。
|
|
|
@ -95,7 +99,4 @@
|
|
|
|
6. aaa()函数和createjz()函数是用于创建邻接矩阵,描述了地铁站点之间的连接关系。
|
|
|
|
6. aaa()函数和createjz()函数是用于创建邻接矩阵,描述了地铁站点之间的连接关系。
|
|
|
|
7. print()函数是用于打印地铁线路的邻接表。
|
|
|
|
7. print()函数是用于打印地铁线路的邻接表。
|
|
|
|
8. Dijkstra()函数是用于计算最佳出行线路和预估费用,它使用了Dijkstra算法。
|
|
|
|
8. Dijkstra()函数是用于计算最佳出行线路和预估费用,它使用了Dijkstra算法。
|
|
|
|
9. main()函数是程序的入口点,它首先初始化地铁站点的数据,然后进入一个循环,等待用户的输入。用户可以选择最佳出行线路推荐或出行费用预估,或者退出系统。
|
|
|
|
9. main()函数是程序的入口点,它首先初始化地铁站点的数据,然后进入一个循环,等待用户的输入。用户可以选择最佳出行线路推荐或出行费用预估,或者退出系统。
|
|
|
|
|
|
|
|
|
|
|
|
##详细设计
|
|
|
|
|
|
|
|
|
|
|
|
|