[英]how to add an edge for two existing nodes/vertexs in jung
你能幫我嗎? 如何在圖中存在的兩個節點/頂點之間添加一條邊。 我的圖使用自定義頂點和自定義邊緣類。 這是我的代碼
if(findEdge(g,v1,v2)==null)
g.addEdge(new Edge(), v1, v2, EdgeType.DIRECTED);
findEdge函數在哪里
public Edge findEdge(DirectedGraph<Vertex, Edge> g, Vertex v1,Vertex v2) {
Collection<Edge> edges = g.getEdges();
for (Edge ed : edges) {
//System.out.print(vt.getLabel() + " ");
if(ed.getNodeFrom().equals(v1.getLabel())&&ed.getNodeDes().equals(v2.getLabel())) {
return ed;
}
}
return null;
}
從該函數中,我可以獲得關於兩個存在的節點的邊緣的結果,是否存在或為空。
首先,Graph已經有了findEdge()方法; 查看Marco13 @指向您的API文檔。
其次,正如rlegendi @指出的那樣,不清楚是否要一張多重圖形:如果要,為什么只在沒有邊的情況下添加邊,如果不存在,為什么要創建邊? DirectedSparseMultigraph對象?
目前尚不清楚您要完成什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.