我有图的邻接矩阵。我需要在没有相交边的情况下可视化该图。 图中的顶点可以随机排列。我知道一种解决方案——枚举所有交叉点的边缘。如果边相交,则重新排列顶点,但对于大量顶点(超过 20 个)来说代价太高。 还有其他关于如何检查相交边的想法吗?
最佳答案
在具有不相交边的 3D 平面中可视化任何图形真的很容易。
1) 将所有顶点放置在 3D 平面中的任意一点,使得没有三个顶点共线并且没有四个顶点在同一平面上。
2) 遍历邻接矩阵,画直线/曲线连接顶点。
在 2D 平面中,不能保证存在解。例如,假设有大约 10 个顶点并且每个顶点都相互连接的最坏情况。
关于algorithm - 如何绘制具有不相交边的图形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23491270/