java - 旅行计划算法的图结构
问题描述
作为免责声明,我对图形数据库和图形编程很陌生。
作为我项目的一部分,我需要从具有兴趣点的道路网络构建图形,这些兴趣点具有类别。到目前为止,我已经下载了一个城市的 OSM 文件,并且我拥有该城市的兴趣点的 JSON 文件。我也尝试使用 GraphHopper 实例,但我找不到将兴趣点添加到图表的方法。
现在我需要构建道路网络图(无向,距离作为边权重,兴趣点分配给顶点)。然后,我的主要任务需要图表本身,即为旅行计划查询实现复杂的算法。
到目前为止,我的想法是将 OSM 文件转换为 JSON,并以编程方式合并两个 JSON 文件(用于地图和兴趣点),使用邻接列表创建图形数据结构。我想使用类似 GraphHopper 的原因是能够使用我的项目需要的已经实现的最短路径算法。
你知道有什么软件可以帮助我更好地完成任务吗?你会推荐我自己创建数据结构和算法吗?
谢谢!
解决方案
如果您要查找的是图表,我建议您查看jgrapht。它是一个包含所有图形实现的库。它在包中附带了非常好的文档和示例。如果您熟悉图表,那么使用它一点也不难。
推荐阅读
- html - 导航栏适合大多数页面,除了一个
- angular - 在我的表格组件中检查后,表达式发生了变化
- python - 使用 pd.read_json() 提取网页中的 json 数据?
- mysql - 与 MySql 的图表连接
- laravel - 图像存储但未在 laravel API 中显示正确路径
- android - 有没有办法在 android 中使用树 uri 计算 USB 存储大小?
- vue.js - 将路由器链接添加到 Vuetify 树视图
- html - Elastic Beanstalk 上对 index.html 的更改
- ios - 使用firebaseUI ios swift进行电话身份验证
- c - strcpy 在特定内存地址返回值加垃圾