これらのクラスがあるとします:
public class EdgeI {
public int from;
public int to;
public EdgeI (int a1, int a2) {
from = a1;
to = a2;
}
}
public class VertexI {
public List neighbors;
public String info;
public VertexI (List neig, String str) {
neighbors = neig;
info = str;
}
}
public class vertexWeight {
public int v;
public int w;
public vertexWeight (int vertexNum, int wum) {
v = vertexNum;
w = wum;
}
}
EdgeI
数値のペアを含むオブジェクトのリストがあるとします。VertexI
空のリストと文字列を含むオブジェクトのリストもあるとします。空のリストに次を追加します。
これを EdgeI オブジェクトのリストとして持っているとします。
(1,2), (1,2) (1,2), (1,3), (1,3), (1,4)
リストの最初のVertexI
オブジェクトについて、次のリストを追加したい
(2,3) (3,2)
頂点オブジェクトに。基本的に、「to」整数と「to」整数が繰り返される回数を取り、クラスからvertexWeight
のリストに追加するオブジェクトを作成したいと考えています。したがって、最初のオブジェクトはオブジェクトと. これを実装するために、これまでに作成しました:neig
VertexI
neig
VertexI
vertexWeight
(2,3)
(3,2)
public void createGraph () {
int oldFrom = -1;
int oldTo = -1;
for(int i = 0; i < edges.size(); i++) {
EdgeI e = edges.get(i);
int from = e.from;
int to = e.to;
VertexI v = vertices.get(from);
v.neighbors.add(new vertexWeight (to, 1));
if (from == oldFrom && to == oldTo){}
//have to add increment the number 1 in the vertex weight object somehow
else {
oldFrom = from;
oldTo = to;
}
}
}
これを実装するためのヒントや方法が必要ですか? 私の論理は間違っているかもしれません。私が考える最も助けが必要なところです。