m0_63164478 2023-04-12 20:04 采纳率: 0%
浏览 168

关于#数据结构#的问题:创建一个具有十个节点的完全二叉树(注意是完全二叉树)要求:先定义二叉树的节点,该程序返回创建的二叉树的根节点地址

请问如何创建一个具有十个节点的完全二叉树
(注意是完全二叉树)

  • 写回答

3条回答 默认 最新

  • 小熊爱吃软糖吖 2023-04-13 00:06
    关注

    完全二叉树如图所示

    img

    package answers;
    
    public class TreeNode {
        public int val;//结点的值
        public TreeNode left;//结点的左孩子
        public TreeNode right;//结点的右孩子
    
        public TreeNode(int val) {
            this.val = val;     // 这个结点中的值是 val
            this.left = null;   // 这个结点的左孩子是 null:不存在 —— 左子树是空树
            this.right = null;  // 这个结点的有孩子是 null;不存在 —— 右子树是空树
        }
    }
    
    
    package answers;
    
    public class TreeOperations {
        public static TreeNode 手动构建二叉树() {
            TreeNode a = new TreeNode('A');
            TreeNode b = new TreeNode('B');
            TreeNode c = new TreeNode('C');
            TreeNode d = new TreeNode('D');
            TreeNode e = new TreeNode('E');
            TreeNode f = new TreeNode('F');
            TreeNode g = new TreeNode('G');
            TreeNode h = new TreeNode('H');
            TreeNode i = new TreeNode('I');
            TreeNode j = new TreeNode('J');
    
            // 手动构建其关系
            a.left = b; a.right = c;
            b.left = d; b.right = e;
            c.left = f; c.right = g;
            d.left = h; d.right = i;  
            e.left = j; e.right = null;
            f.left = null; f.right = null;//都为空可以省略
            g.left = null; g.right = null;
            h.left = null; h.right = null;
            i.left = null; i.right = null;
            j.left = null; j.right = null; 
    
            // 返回根结点即可
            return a;
        }
        public static void main(String[] args) {
            //主函数根据需求填写
        }
    }
    

    answers是自己定义的包名,就是这样的了,望采纳!

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月12日