微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用java打印所有是根节点倍数的节点

如何解决使用java打印所有是根节点倍数的节点

假设这是二叉树情况。 (见下图。)我需要按顺序遍历打印所有节点,并且必须仅打印根节点的倍数。

binary tree

对于上面的二叉树,我想要的输出将是 20 10 25 5 15 30

这是我的代码

gpflow.set_trainable(m.kernel.lengthscales,False) 

我必须对方法m.kern.lengthscale[1:].fixed()进行哪些更改才能获得所需的输出

解决方法

System.out.print(node.data % node.data + " ");

将获得0

方法printNodes应该知道root的值

    public void printNodes(Node node) {
        if (node == null) return;
        printNodes(node.left);
        if(node.data % root.data == 0){
            System.out.println(node.data);
        }
        printNodes(node.right);
    }
,
public void printNodes(Node node){
    // Write your code here
    if(node == null)
    return ;
        if(node.data==0){
        System.out.println("Division by zero is not defined");
        return;
        }
    printNodes(node.left);
    if(node.data%root.data==0)
    {
        System.out.print(node.data+ " ");
    }
    printNodes(node.right);

}

我认为这应该可以解决您的问题,因为它是一个中序横向,它应该是 left-Root-right 并且它还应该检查某个数字是否为 0。如果是 0,则不会打印任何内容(未定义除以 0)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。