算法题-写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵树中相差最大的两个节点间的差的绝对值。请注意程序效率。

来源:互联网 发布:淘宝网服务中心电话 编辑:程序博客网 时间:2024/04/19 13:40
package com.larry.test;class TreeNode{int val;TreeNode lChild;TreeNode rChild;public TreeNode(int val){this.val = val;lChild = null;rChild = null;}}public class Test {static int max = Integer.MIN_VALUE, min = Integer.MAX_VALUE;private void preOrder(TreeNode root){//前序遍历算法if(root == null) return;else{int val = root.val;if(val < min) min = val;if(val > max) max = val;preOrder(root.lChild);preOrder(root.rChild);}}public static void main(String[] args) {TreeNode node1 = new TreeNode(1);TreeNode node2 = new TreeNode(2);TreeNode node3 = new TreeNode(3);TreeNode node4 = new TreeNode(4);node1.lChild = node2;node1.rChild = node3;node3.rChild = node4;new Test().preOrder(node1);System.out.println("max = " + max + ", min = " + min);}}


0 0
原创粉丝点击