本人java新手,想锻炼一下!想做一个汽车的导航系统(一个小城市的导航系统就行了),思路如下(不知道正确否):
每个路口有描点,用于遍历算法找出最佳路线,最佳路线优先级最高的是路程最短(其他的最佳路线就视情况而定,最起码就提供几种最佳路线)!现在的问题是这种思路合理吗?不和理的话请指证,合理的话要运用到哪几种算法或者是哪几种编程思想?
请教高手java做汽车导航系统思路
答案:2 悬赏:40 手机版
解决时间 2021-02-01 19:50
- 提问者网友:太高姿态
- 2021-02-01 15:16
最佳答案
- 五星知识达人网友:神也偏爱
- 2021-02-01 16:56
需要描点数据:
-------------
数据表:address
字段:
id name text
编号 地名 备注
如:
1 天府广场
2 火车南站
3 火车北站
4 磨子桥
5 新会展中心
------------
数据表:round
字段:
id beginId endId length direction name
编号 起始点 终止点 距离(km) 方向(0 90 180 270) 路名
如:
1 1 2 50 180 人民南路(1)
2 2 1 50 0 人民南路(2)
3 1 3 30 0 人民北路
4 2 4 15 30 科华路
5 2 5 20 180 天府大道(1)
6 5 2 20 0 天府大道(2)
7 4 3 45 0 红星路
-----------------
查询时:如果输入:
起点:新会展中心 终点:火车北站
1.查询他们的ID:新会展中心=5 火车北站=3
查询数据表round的beginId=5并且方向在0-90和270-0之间
得到路径1个:
A:5->2 天府大道(2) 20
查询Begin=2并且方向在0-90和270-0之间
得到路径2个:
A:2->1 人民南路(2) 50
B:2->4 科华路 15
查询BeginId为1 或者 4 并且方向在0-90和270-0之间
A:1->3 人民北路 30 [结束]
B:4->3 红星路 45 [结束]
总结下来:
5->2->1->3 =100km
5->2->4->3 =80km
-----
-------------
数据表:address
字段:
id name text
编号 地名 备注
如:
1 天府广场
2 火车南站
3 火车北站
4 磨子桥
5 新会展中心
------------
数据表:round
字段:
id beginId endId length direction name
编号 起始点 终止点 距离(km) 方向(0 90 180 270) 路名
如:
1 1 2 50 180 人民南路(1)
2 2 1 50 0 人民南路(2)
3 1 3 30 0 人民北路
4 2 4 15 30 科华路
5 2 5 20 180 天府大道(1)
6 5 2 20 0 天府大道(2)
7 4 3 45 0 红星路
-----------------
查询时:如果输入:
起点:新会展中心 终点:火车北站
1.查询他们的ID:新会展中心=5 火车北站=3
查询数据表round的beginId=5并且方向在0-90和270-0之间
得到路径1个:
A:5->2 天府大道(2) 20
查询Begin=2并且方向在0-90和270-0之间
得到路径2个:
A:2->1 人民南路(2) 50
B:2->4 科华路 15
查询BeginId为1 或者 4 并且方向在0-90和270-0之间
A:1->3 人民北路 30 [结束]
B:4->3 红星路 45 [结束]
总结下来:
5->2->1->3 =100km
5->2->4->3 =80km
-----
全部回答
- 1楼网友:不想翻身的咸鱼
- 2021-02-01 17:59
这世界变化太快了。。。新手要做地图系统。。。。
你知道遍历算法有多少种?哪种更适合做地图系统?
请看看《数据结构》吧。最经典的教材是清华严蔚敏的。
地图数据从哪来?显示硬件软件系统各怎么做?
真是无知者无畏。。。
再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯