位置层次结构的数据结构或数据模型
I have the following location types,
Airport
City
State
Country
Hierarchy is Country has a state, State has a City and a City has airport.
City:San Francisco To City:Frankfort Rate is 100$ is stored in the system in some form.
当有人询问从机场:SFO 到机场:FRA 的费率时,应用程序应查找从机场:SFO 到机场:FRA 的任何可用费率。
因为我们没有一个(我们只有城市到城市),应用程序应该检查更高一级的机场,即城市。因此,应用程序应该能够找到机场城市:SFO 和机场城市:法兰克福,并检查费率是否可用。在这种情况下,它选择 100 美元,因为城市:旧金山到城市:法兰克福的汇率保持为 100 美元。
如何在数据结构中表示此位置层次结构(在 Java 中)?图或树会有用吗?如果可以,请提供一些 sample 给我。
最佳答案
IMO,自下而上或自上而下有两种方式(尽管两者实际上都基于 HAS-A 关系:
自下而上:
1, 有 Airport, City, State, Country 类
2、Airport有City,City有State,State有Country变量
现在无论何时你想要费率,你都可以转到机场对象,检查城市->州->国家等并相应地收费
自上而下:
1, 有 Country, State, City, Airport 类
2、Country会有一个List包含State,State会有List of City,City会有Airport List
我更喜欢第一个,因为维护父级的 1 值比维护所有子级的列表更容易/高效。
关于java - 位置层次数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16539356/