繁体   English   中英

java中的图形实现

[英]Graphs implementation in java

我正在尝试创建一个使用另一个类的Graph类,Vertex类表示图的所有顶点。 我不确定是否需要一个表示两个顶点之间可能连接的Edge类,因为每个顶点都可以跟踪它所连接的其他节点。 但我不确定这是否正确。 你怎么看?

谢谢。

您不必使用Edge类。 您可以使用邻接列表,仍然可以正确表示未加权的图形。 对于加权图,您需要一种表示边缘成本的方法,因此使用Edge类是合适的。

class Graph<E> {
    private List<Vertex<E>> vertices;

    private static class Vertex<E> {
        E elem;
        List<Vertex<E>> neighbors;
    }
}

通常,基于其对预期用途的适合性来选择表示 在这个简单的示例中, GraphPanel使用List<Edge>作为其模型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM