public static ExpressionTree toExpressionTree(String[] tokens) { Stack stk = new Stack(); for(String token:tokens) { if(Character.isDigit(token.charAt(0))) stk.push(new ExpressionTree(token)); else stk.push(new ExpressionTree(token,stk.pop(),stk.pop())); } return stk.pop(); } //////// public class bststuff { public static void reversePrint(TreeNode root) { if(root != null) { reversePrint(root.getRight()); system.out.println(root.getValue()+""); reversePrint(root.getLeft()); } } public static TreeNode maxNode(TreeNode root) { if(root == null) return null; while(root.getRight() != null) root = root.getRight(); return root; } }