我需要从包含表示为邻接列表的多个“迷宫”的文本文件中制作图表。名单如下:
A,G
A,B,F
B,A,C,G
C,B,D,G
D,C,E
E,D,F,G
F,A,E
G,B,C,E
D,F
A,B,G
B,A,C,E,G
C,B,D,E,G
D,C
E,B,C,G
F,G
G,A,B,C,E,F
F,A
A,B,G
B,A,G
C,D,G
D,C,G
E,F,G
F,E,G
G,A,B,C,D,E,F
每个“迷宫”的第一行包含迷宫的起始节点(第一个字母)和迷宫的结束节点(第二个字母)。
我已将文本文件解析为所有行(包括空白行)的 ArrayList,然后解析为行 ArrayLists 的 ArrayList(单独的迷宫列表)。我通过在空白行上拆分完整的文本来做到这一点。我现在的问题是我无法弄清楚如何使用我的节点类从这些“迷宫”中构造一个图表。这是我的节点类:
package algo2;
import java.util.ArrayList;
public class Node<T>{
private T value; //this Node<T>'s value
public ArrayList<Node<T>> connections;
public boolean isStart;
public boolean isEnd;
public boolean visited;
public Node(T value){
this.value = value;
connections = new ArrayList<Node<T>>();
}
//returns the value of this Node<T>
public T getValue(){
return value;
}
//returns true if the node is connected to any other nodes
public boolean isConnected(){
if(connections == null){
return false;
}
return true;
}
//returns a list of nodes connected to this node
public ArrayList<Node<T>> getConnections(){
return connections;
}
//sets the node's value
public void setValue(T value){
this.value = value;
}
//adds a connection from this node to the passed node
public void connect(Node<T> node){
connections.add(node);
}
public String toString(){
return value+"";
}
}
有人可以指出我正确的方向吗?