Linux ディレクトリ構造からツリーを作成する必要があります。例えば:
. 0
./file1.txt 1
./file2.txt 2
./site 3
./site/file3.txt 4
./site/ru 5
./site/ru/file4.txt 6
各ノードはディレクトリまたはファイル (子がない場合) であり、ID(>=0) を持ちます。ルート ID は 0 です。親 ID は常に子 ID よりも低くなります。私は2つのクラスを作成しました:
class Node<T1, T2> {
T1 key;
T2 value;
List<Node<T1, T2>> children;
Node(T1 key, T2 value) {
this.key = key;
this.value = value;
children = new ArrayList<Node<T1, T2>>();
}
public boolean isFile()
{
return children.size() == 0;
}
}
と
public class DirectoryTree<T1 extends Comparable<T1>, T2>
{
private Node<T1, T2> root = null;
public DirectoryTree(T1 key, T2 value)
{
root = new Node<T1, T2>(key, value);
}
}
どうすればツリーを埋めることができますか?