zoukankan      html  css  js  c++  java
  • evaluate-reverse-polish-notation

    题目描述

    Evaluate the value of an arithmetic expression in Reverse Polish Notation.

    Valid operators are+,-,*,/. Each operand may be an integer or another expression.

    Some examples:

    ["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9

    ["4", "13", "5", "/", "+"] -> (4 + (13 / 5)) -> 6

    /**
     * @author gentleKay
     * Given a binary tree, find its minimum depth.   给定二叉树,求其最小深度。
     * The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
     * 最小深度是从根节点到最近的叶节点沿最短路径的节点数。
     */
    
    public class Main01 {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		TreeNode root = new TreeNode(4);
    		root.left = new TreeNode(2);
    		root.left.left = new TreeNode(1);
    		root.left.right  = new TreeNode(3);
    		
    		root.right = new TreeNode(6);
    		root.right.left = new TreeNode(5);
    		root.right.right = new TreeNode(7);
    		root.right.right.right = new TreeNode(8);
    		System.out.println(Main01.run(root));
    	}
    	
    	public static class TreeNode {
    		int val;
    		TreeNode left;
    		TreeNode right;
    		TreeNode(int x) { val = x; }
    	}
    	
    	public static int run(TreeNode root) {
    		
    		if (root == null) {
    			return 0;
    		}
    		if (root.left == null) {
    			return run(root.right) + 1;
    		}
    		
    		if (root.right == null) {
    			return run(root.left) + 1;
    		}
    		return Math.min(run(root.left)+1, run(root.right)+1);
        }
    }
    

      Stack 方法:

  • 相关阅读:
    Mysql外键和表关系
    列类型-字符类型
    列类型-日期时间型
    列类型
    破解MySQL的root密码
    数据库简单使用
    数据库简介
    socketserver
    python网络编程-粘包问题的解决
    python-网络编程,简单模型
  • 原文地址:https://www.cnblogs.com/strive-19970713/p/11226638.html
Copyright © 2011-2022 走看看