いくつかのノード v={1,2,3,4,5,6,7} とエッジ E={(1-2),(2-3), (3,4),( 4-7), (3-6), (2-6), (5-6), (1-5)} といくつかの要求 D=(s,d)={(1-3),( 2-3)、(4-5)。(7-7), (6-4),(2-7)} は、小規模なネットワークの正確な送信元と宛先を持つパスです。これをJavaで書くにはどうすればよいですか?誰でも私を助けてもらえますか?
質問する
1355 次
3 に答える
1
名詞を抽出すると、Vertices/Node クラス、Edge クラス、Demand クラスが必要であることがわかります。これはソリューションの始まりにすぎません。ノードのリスト、エッジのリスト、およびデマンドのリストで構成されるグラフまたはネットワーク クラスもあります。次に、ノード、エッジ、および要求を使用する処理メソッドを配置する場所を決定する必要があります。
> A Node will consist of an integer.
> An Edge will consist of two Nodes
> and so on
ここに例があります
public class Node {
private int nodeNumber;
}
于 2013-07-15T12:50:37.750 に答える
0
出発点として、次のクラス構造を提案できます。
class Vertex{
String id;
List<Edge> edges;
public Vertex(String id){
this.id = id;
edges = new ArrayList<Edge>();
}
void addEdge(Edge e){
edges.add(e);
}
}
class Edge{
Vertex fromVertex;
Vertex toVertex;
Edge(Vertex from, Vertex to){
this.fromVertex = from;
this.toVertex = to;
}
}
等...
独自のグラフを実装せず、ライブラリから使用することを検討している場合は、次の質問をご覧ください。
于 2013-07-15T12:57:39.937 に答える