algorithm - 表示图的数据结构
问题描述
有几个城市及其位置,我想创建一个数据结构来表示这样的图表。该图表示为了只访问每个城市一次可以采取的所有可能路径:
我的问题是,由于这可能是一个非常常见的问题,是否有算法或已经制作的数据结构来表示这一点?编程语言并不重要(尽管我更喜欢 java)。
解决方案
这棵树不好。里面有多余的数据。例如,节点 2 和 4 之间的连接在树中出现了 3 次。你想要一个“结构”,自动为你的问题提供解决方案,这样对你来说更容易,但这不是解决问题的方式。输入数据是一组数据,输出数据是另一组数据,它们可能看起来相似,但也可能完全不同。
一个简单的矩阵,一个三角形为空,另一个包含数据,应该包含您需要的所有信息。矩阵的坐标是节点,单元格是距离。这是您的输入数据。
你在代码中使用这个矩阵做什么是另一回事。也许您想编写所有可能的路径。然后写它们。使用输入数据和您的代码来生成输出数据。
推荐阅读
- c++ - 如果值存储在 C++ 中的 .txt 文件中,如何初始化类的对象
- python - 如何组合从两个 cnn 模型中提取的特征?
- c# - NLog:如何以编程方式获取特定目标的级别
- python - 使用 OpenCV 从图像中去除不均匀的白色边框
- asp.net-mvc - Visual Studio 2017 - Web 部署 - 连接字符串问题
- java - Java/JavaFX:如何使用 CSS-command 获取资源文件夹(路径)
- css - 将 div 预加载器覆盖到部分元素
- javascript - ElectronJS - 使用本地键盘快捷键在 Teaxtarea 中制作粗体文本
- java - 使用 jnativehook 库 Maven JAR 创建 jar 时出现问题
- jquery - 使用 CSS、ajax 和 jQuery 将新行添加到 div 生成的表中