java代码交通图导航模拟系统
时间: 2023-07-30 17:05:29 浏览: 53
好的,下面是一个基于Java的简单交通图导航模拟系统的代码示例:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class TrafficMap {
private Map<String, List<String>> map;
public TrafficMap() {
map = new HashMap<String, List<String>>();
}
public void addRoad(String start, String end) {
if (!map.containsKey(start)) {
map.put(start, new ArrayList<String>());
}
map.get(start).add(end);
}
public List<String> getRoads(String start) {
return map.get(start);
}
public static void main(String[] args) {
TrafficMap trafficMap = new TrafficMap();
trafficMap.addRoad("A", "B");
trafficMap.addRoad("A", "C");
trafficMap.addRoad("B", "D");
trafficMap.addRoad("C", "D");
trafficMap.addRoad("C", "E");
trafficMap.addRoad("D", "E");
List<String> route = new ArrayList<String>();
String start = "A";
String end = "E";
route.add(start);
while (!route.isEmpty()) {
String current = route.remove(0);
if (current.equals(end)) {
System.out.println("Path found: " + route);
break;
}
List<String> nextRoads = trafficMap.getRoads(current);
if (nextRoads != null) {
for (String next : nextRoads) {
if (!route.contains(next)) {
List<String> newRoute = new ArrayList<String>(route);
newRoute.add(next);
route.add(newRoute);
}
}
}
}
}
}
```
该代码实现了一个简单的交通图导航模拟系统,其中包含了一个TrafficMap类,用于存储道路信息,以及一个main方法用于模拟路径搜索过程。在main方法中,我们首先创建了一个TrafficMap对象,并添加了一些道路信息。然后,我们创建了一个route列表,用于存储当前路径,将起点A添加到列表中。然后,我们进入一个while循环,不断从route中取出当前位置,并检查是否已经到达终点。如果当前位置是终点,则输出路径信息,并退出循环。否则,我们获取当前位置可以到达的下一个位置,并将其添加到route中,继续搜索。最终,如果没有找到路径,则输出未找到的信息。
当然,这只是一个简单的示例代码,实际的交通图导航模拟系统需要更加复杂的算法和数据结构来实现。