拼图识别最短路线

时间:2015-04-14 11:31:16

标签: java puzzle

今天我遇到了一个问题,我们必须确定源和目的地之间的最短距离

有许多节点说每个节点都是城市中的机场(PSB图像),而计数是城市之间的航班数量。现在我必须确定两个城市之间的最短路线

现在我想到的是,我将采用一个hashMap,它将源城市作为关键和目的地城市存储为价值。

现在要确定两个给定城市之间的最短路线,我要做的是搜索关键字以识别包含源城市的入口对象,并在HM的值中搜索目的地城市

我的HM会像(参考图像以理解hm中的条目)

hm.put(h,b);
hm.put(b,c);
hm.put(c,e);
hm.put(b,e);

现在假设我被要求确定h和e之间的最短路径

根据我的算法,我将搜索hm的键集为“h”城市。

1)我将获得<h,b>地图输入对象     现在我将遍历hm valueSet为“e”城市。    2)我将获得<c,e><b,e>地图输入对象

现在借助我从步骤1获得的b的entry.value,我将尝试关联我从步骤2得到的入口对象的密钥,因此我将确定hbe是与hbce相比距离更短

enter image description here

我不仅想了解是否有更好的问题解决方案,而且我想了解任何能够解决这类设计问题的书或链接。

1 个答案:

答案 0 :(得分:2)

看看这两个算法:DjistrakA*。 你的想法基本上是相当不错的,虽然它只适用于较小的图形和相当具体的条件。