地铁结队开发(三)

前面两个解决了问题,但是!!!!!web.........老子不熟。。。。

尽力弄吧。

录入了数据库,把上学期学的增删改查扒拉了过来,这拼拼那儿凑凑,最终........GG

但是,好赖咱也实现了功能了是不是,虽然只是java程序端的,,,

所以,既然没有成功,就不在这里献丑了。。

哦对了,忘了,把Web设计思想放上来吧,毕竟废了好大一会儿脑子

(直接用的添加代码,各位别介意)

1、数据库设计
 
      将石家庄地铁线路图的各个线路,各个站点,换乘信息等用数据库的形式保存起来,应该保存的信息有
      {线路号,线路的各个站名,车站的换乘信息}

(1)6个地铁线,各个站点,换乘信息(**)。
         这里的换乘信息利用起来

2、查:
换乘*********

if(换乘线!=null)则xxx

这个web的核心是,如何利用数据库换乘节点信息

3、web的界面设计

连接API,显示路线,进行选择,自动显示


1、从数据库开始,读换乘信息,进行判断 ( ==null or != null)
     ID,              int 
     number,     int
     name,        char
     change,      int

2、连接数据库,
     读取数据str
  (1)不换乘:ID去减,例如:从第1(x(line))站坐到第8(y(line))站,t=8(y)-1(x);
  (2)换乘:ID去减,例如:从1号线第1站坐到第8站解放广场站,t=y-x,换到3号线,此时解放广场站是3号线的第5站,此时我的目的地在这里是第11站,那么,t=t+y3-x3
  (3)方向问题:遍历某一号线的所有站点,确定我的目的地,然后取ID差的绝对值,搞定
          输入是节点的时候,会出现很多数据,,,
  (4)多线的转圈,我如何晓得换了n个线后能到目的地??连通性
   换线越多路越长,输入输出是个节点怎么办

连通性表建立起来之后如何去利用它
lin e   reach     chang  str                                                 信息
1          6         1 6 id                                 回到表1里,找到id,输出id的信息(line,name)
                       1 2 6 id id            回到表1里,找到id,输出id信息(line,name);   到表2,找到id,输出id信息(line,name)
                       id的数量:t-1                                        id的数量:t-1


从数据库里查找
按站名查找,
选择a作为起点,记录id,站点,line,change;
选择b作为终点,记录id,站点,line,change;
判断是否有change,然后进行计算
View Code

 

顺手写个总结吧,这个地铁开发,让我学会了最短路径的写法,再应用到地铁查询上,觉得逻辑性还是蛮强的。就酱紫,加油~

下个月继续gogogo!

posted @ 2019-03-31 21:17  米汤000  阅读(116)  评论(0编辑  收藏  举报