首页 > 解决方案 > 顶点标签在图中应该是唯一的吗?

问题描述

我正在开发一个基于浏览器的应用程序,它允许用户创建图形、操作它们并在它们上运行算法。现在一个顶点由一个唯一的正整数标识,但我想允许标记顶点,其中标签可以是任何字符串。由于标签是用户实际看到的顶点的“名称”,我在是否应该允许重复标签以及如何存储它们方面处于两难境地。有几个选择:

  1. 保持整数顶点 id 并使标签也是唯一的。这引入了(程序员)在标签和顶点 ID 之间混淆的风险,尤其是在 JS 自动将数字转换为字符串的情况下。
  2. 保留整数顶点 ID 并允许重复标签。更灵活,但更多的用户混淆空间。
  3. 完全消除数字顶点 ID,并通过其(唯一)标签识别顶点。不知何故,将感觉像是属性的东西提升为标识符是不合适的。
  4. 其他一些方法?

我查看了一些图形库,每个图形库似乎都有自己的处理方式。我知道我的问题可能没有一个明确、明确的答案,因此感谢您的意见和见解!先感谢您。

标签: javascripttypescriptgraph-theorygraph-databases

解决方案


完全消除数字顶点 ID,并通过其(唯一)标签识别顶点。

不。在您的算法实现中,您将希望按数字查找顶点 - 而不是字符串

更详细的讨论:https ://github.com/JamesBremner/PathFinder2/wiki/cGraph-Class-Design


推荐阅读