int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x;}} public class Main { static int ans; public static void main(String[] args) { //第一层头结点的创建 TreeNode node = new TreeNode(1); //第二层创建左结点,右结点 node.left = new TreeNode(4); node.right = new TreeNode(4); //在第二层的基础上在左子树创建一个左结点,右结点,在右子树创建创建一个右结点 node.left.left = new TreeNode(4); node.left.right = new TreeNode(4); node.right.right = new TreeNode(5); System.out.println(longestUnivaluePath(node));//输出最长相同值的路径 } 代码注释
时间: 2024-03-18 12:45:28 浏览: 106
php下intval()和(int)转换使用与区别
这段代码是用 Java 语言编写的,主要功能是计算二叉树中最长相同值路径的长度。其中定义了一个 TreeNode 类,表示二叉树的结点,包含一个整型值 val 和左右子节点 left、right。
在 main 函数中,首先创建了一个值为 1 的头结点,然后创建了它的左右子节点,分别为值为 4 的结点。接着在左子树中创建了左右子节点,值均为 4,在右子树中创建了一个值为 5 的右子节点。
最后调用了 longestUnivaluePath 函数,输出最长相同值路径的长度。
代码中还定义了一个静态变量 ans,用于保存最长路径的长度。
阅读全文