Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否将父节点添加到树中的节点?_Java_Tree - Fatal编程技术网

Java 是否将父节点添加到树中的节点?

Java 是否将父节点添加到树中的节点?,java,tree,Java,Tree,我有一个树结构,我希望能够遍历并将父节点添加到每个子节点都具有的数据父变量中 该树的结构是: Class Tree { Node root; } Class Node { String data; Node parent; List<Node> children; } 使用该代码和给定的树: A / \ D E / \ B S E的父母应该是D,为什么呢 E的父母应该是D,为什

我有一个树结构,我希望能够遍历并将父节点添加到每个子节点都具有的数据父变量中

该树的结构是:

Class Tree {
     Node root;
}

Class Node {
     String data;
     Node parent;
     List<Node> children;
}
使用该代码和给定的树:

     A
    /  \
   D    E
       / \
       B  S
E的父母应该是D,为什么呢

E的父母应该是D,为什么呢

在您的循环中,您正在执行:

for (Node child : curNode.children) {
    child.parent = curNode;
    curNode = child; // <-- problem is here!!!
    findDFS(value);
}
for(节点子节点:curNode.children){
child.parent=curNode;

Curnal=儿童;//目前,这个问题非常模糊。考虑一下你尝试过的和你面临的问题的一些例子。我更具体地说,你的父母是A?而且,父母给孩子们列出了2个孩子还是超过2个孩子?,我认为Daemon还意味着:你问的是什么?你遇到错误了吗?预期的行为是什么,观察到的或实际的行为是什么?我的意思是E的父级在应该是A的时候被设置为D。
for (Node child : curNode.children) {
    child.parent = curNode;
    curNode = child; // <-- problem is here!!!
    findDFS(value);
}