JAVA:二叉树

标签 java binary-tree

在这里,我正在尝试练习制作二叉树,以便我可以对它们进行不同的操作。

import java.util.*;
import java.lang.*;


public class Main {

public static void main(String[] args) {

}
}

//Building Binary Trees
class bTree {

static class Node { //remember to initilize a root

    String value;
    Node left, right;

    Node(String value, Node left, Node right) {
        this.value = value;
        this.left = left;
        this.right = right;
    }
    Node(String value) //THIS IS A SIBLING CONSTRUCTOR
    {
        this(value, null, null);
    }

    Node root = new Node("ROOT");
    Node lefty = new Node("LEFT0");
    Node righty = new Node("RIGHT0");
    root.left = lefty;
    root.right = righty;
}
Node root = null;
}

为什么我会收到错误消息:在 root.left 和 root.right 赋值处应有标识符?

谢谢!

最佳答案

赋值语句

root.left = lefty;
root.right = righty;

不允许在类里面使用。改变这一行就可以达到你想要的效果

Node root = new Node("ROOT");

对此

Node root = new Node("ROOT", lefty, righty);

它利用了您的三参数构造函数。

但是,您可能需要重新考虑 rootleftyrighty 的位置。它们可能用于 bTree 类。此外,有一种约定鼓励命名类时将每个单词的首字母大写,例如二叉树

关于JAVA:二叉树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9648756/

相关文章:

c# - ReheapUp 和 ReheapDown 递归到迭代的转换 C#

python - 应用引擎 : IOError when saving a lot of objects to the Datastore

Java正则表达式在HTML文件中查找CSS导入

java - Android 项目 NullPointerException 尝试调用位图图像上的 Files.readAllBytes(Paths.get ("Image Path")))

java - 在java中使用正则表达式删除匹配的字符串

.net - 在深度优先搜索期间检测系谱图中的循环

c++ - 二叉树递归删除

algorithm - 确定所谓的二叉树是否包含循环的有效算法?

java - 使用 Apache POI for PowerPoint (HSLF) 合并单元格

java - kubernetes pod 内存 - java gc 日志