我正在使用DefaultDirectedGraph来创建我的有向图,其中每个顶点都是一个对象。
DefaultDirectedGraph g = new DefaultDirectedGraph(DefaultEdge.class);
我想知道是否有可能表征边缘?例如,我想保留学生之间友谊的信息。
或者我应该在边缘和友谊对象之间有地图?
答案 0 :(得分:0)
您当然可以在边缘存储信息。这是我最近自己使用的用例:
public class Intersection{
public final long latitude;
public final long longitude;
public Intersection(long latitude, long longitude){ ...}
}
public class Street extends DefaultWeightedEdge{
public final String streetName;
public final int speedLimit;
public final Street(...){...}
}
public class RoadNetwork{
public final Graph<Intersection, Street> network=new DefaultDirectedGraph<>(Street.class);
Intersection i1=new Intersection(..);
Intersection i2=new Intersection(..);
Street s=new Street(..);
//Network with 1 street
network.addVertex(i1);
network.addVertex(i2);
network.addEdge(i1,i2,s);
}
注意: