图-公交查询问题乱弹(一)
2013-05-26 15:18
239 查看
下面这图是本人乱涂鸦的只有3条线路的公交路线图
一号线
A-B-E-D-K
二号线F-B-C-D-K-J
三号线H-I-E-J-K-D
保存这个数据结构使用图的变形很合适
首先是一个所有路线的集合,一个元素包含两个标识,路线和第一个站点。可能你会说那一条路线需要保存两次,因为正反的形式是不相同的,因为起始站点不同。我们先讨论一种情况,按上图来说,就是从左往右。
我们的数据集合就是
(1,A).(2,F),(3,H)
对于一个站点我们需要一个保存信息的格式。一个站点到下一个站点可能有几天线路一起,所以
站点设计如下,以D站点来说
除了保存站点信息外,还有(1,K)(2,K)
下面谈谈怎么获得得到两个节点之间的路径,这也是公交查询系统的核心功能。
我们下面以几个例子来分析一下(只考虑从左往右)。
1.比如我现在H,我想到K。我们知道我们自己现在在的地点是应该的,我们现在设置你要去的站点(可能你并不知道站点,你知道地方,这个可以通过地图来,地图比对,然后可以给出附近站点的信息,这个就是后话了,这里不谈)。在输入站点后,在处理站点信息时,我希望站点有这些信息,这个站点在那几条线路上,比如E站点在1和3两条线路上。
下面我们开始,太好了H在线路3上,K也在线路3上,太好了,乘客你就乘3路车,肯定把你送到K,除了车子半路抛锚。
2.现在我们想从A到J,这有点麻烦。我们输入J,它带有的信息(2,3),看来我们必须转车了,没办法,我们现在只希望不要太坑就行。我们在A上了一路车,开了几分中,到达了B(2,1),我想我可以转车了,可也不一定。我继续到达了E(1,3),这也是好的选择。可我还是不想下车,继续到达了D,看情况你要坐3路车往回走了。
以下是路线分析:
A-B------J1-2
A-E-J1-3
A-D(K)----j1-3
这只是正常的,如果你真是很无聊,你可以A-B-D-E-J,路线:1-2-1-3,这些没有意思的项我们应该是在内部屏蔽的。
为什么只讨论一个方向,你知道A-K怎么走,难道不知到K-A吗?
今天先讨论到这。
一号线
A-B-E-D-K
二号线F-B-C-D-K-J
三号线H-I-E-J-K-D
保存这个数据结构使用图的变形很合适
首先是一个所有路线的集合,一个元素包含两个标识,路线和第一个站点。可能你会说那一条路线需要保存两次,因为正反的形式是不相同的,因为起始站点不同。我们先讨论一种情况,按上图来说,就是从左往右。
我们的数据集合就是
(1,A).(2,F),(3,H)
对于一个站点我们需要一个保存信息的格式。一个站点到下一个站点可能有几天线路一起,所以
站点设计如下,以D站点来说
除了保存站点信息外,还有(1,K)(2,K)
下面谈谈怎么获得得到两个节点之间的路径,这也是公交查询系统的核心功能。
我们下面以几个例子来分析一下(只考虑从左往右)。
1.比如我现在H,我想到K。我们知道我们自己现在在的地点是应该的,我们现在设置你要去的站点(可能你并不知道站点,你知道地方,这个可以通过地图来,地图比对,然后可以给出附近站点的信息,这个就是后话了,这里不谈)。在输入站点后,在处理站点信息时,我希望站点有这些信息,这个站点在那几条线路上,比如E站点在1和3两条线路上。
下面我们开始,太好了H在线路3上,K也在线路3上,太好了,乘客你就乘3路车,肯定把你送到K,除了车子半路抛锚。
2.现在我们想从A到J,这有点麻烦。我们输入J,它带有的信息(2,3),看来我们必须转车了,没办法,我们现在只希望不要太坑就行。我们在A上了一路车,开了几分中,到达了B(2,1),我想我可以转车了,可也不一定。我继续到达了E(1,3),这也是好的选择。可我还是不想下车,继续到达了D,看情况你要坐3路车往回走了。
以下是路线分析:
A-B------J1-2
A-E-J1-3
A-D(K)----j1-3
这只是正常的,如果你真是很无聊,你可以A-B-D-E-J,路线:1-2-1-3,这些没有意思的项我们应该是在内部屏蔽的。
为什么只讨论一个方向,你知道A-K怎么走,难道不知到K-A吗?
今天先讨论到这。
相关文章推荐
- 图-公交查询问题乱弹(二)
- 图-公交查询问题乱弹(三)
- 图-公交查询问题乱弹(一)
- 图-公交查询问题乱弹(一)
- 图-公交查询问题乱弹(一)
- 【数学建模集训系列】公交查询系统的matlab实现-问题重述
- 公交查询合理性问题
- Oracle查询慢, 特别是更新慢问题
- 关于Hibernate查询返回值转换为实体或Map形式处理问题
- Yii框架查询Mongodb并页面显示问题
- Dubbo消费者调用提供者接口接受spark查询的mysql数据问题
- 三层结构里的查询问题
- 解决Python查询Mysql数据库信息乱码问题
- 为什么忘记 commit 也会造成 select 查询的性能问题
- 查询EXCEL数据时,列数据为空的问题
- 【Java EE 学习 77 下】【数据采集系统第九天】【使用spring实现答案水平分库】【未解决问题:分库查询问题】
- 解决了使用Firefox登录网通上网记录查询网页的问题
- Oracle中查询同一个日期字段,格式不同的问题
- 解决查询access数据库含日文出现“内存溢出”问题