zoukankan      html  css  js  c++  java
  • LeetCode——Binary Tree Postorder Traversal

    Given a binary tree, return the postorder traversal of its nodes' values.

    For example:
    Given binary tree {1,#,2,3},

       1
        
         2
        /
       3
    

    return [3,2,1].

    Note: Recursive solution is trivial, could you do it iteratively?

    中文:二叉树的兴许遍历(左-右-根)。能用非递归吗?

    递归:

    public class BinaryTreePostorderTraversal {
        public List<Integer> postorderTraversal(TreeNode root) {
        	List<Integer> list = new ArrayList<Integer>();
            if(root == null)
            	return list;
            list.addAll(postorderTraversal(root.left));
            list.addAll(postorderTraversal(root.right));
            list.add(root.val);
            return list;
        }
        // Definition for binary tree
        public class TreeNode {
            int val;
            TreeNode left;
            TreeNode right;
            TreeNode(int x) { val = x; }
        }
    }

    非递归:

        public List<Integer> postorderTraversal(TreeNode root){
        	List<Integer> list = new ArrayList<Integer>();
        	if(root == null)
        		return list;
        	Stack<TreeNode> stack = new Stack<TreeNode>();
        	stack.push(root);//最后訪问
        	while(!stack.isEmpty()){
        		TreeNode current = stack.peek();
        		//根节点无子节点
        		if(current.left == null && current.right == null){
        			list.add(current.val);
        			stack.pop();
        		}
        		if(current.left != null){
        			stack.push(current.left);
        			current.left = null;
        			continue;
        		}
        		if(current.right != null){
        			stack.push(current.right);
        			current.right = null;
        			continue;
        		}
        	}
        	return list;
        }


查看全文
  • 相关阅读:
    HTML5-Input
    在安装搜狗输入法的时候找到的一个安装手动下载软件的包
    IP结构与操作之__inet_insert_ifa/__inet_del_ifa
    IP结构与操作之inet_addr_onlink
    IP结构与操作之inet_confirm_addr && confirm_addr_indev
    IP结构与操作之inet_select_addr
    IP结构与操作之inetdev_init && inetdev_destroy
    IP结构与操作之in_device结构和in_ifaddr结构
    网络模块初始化
    网络设备之uc_promisc
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10551927.html
  • Copyright © 2011-2022 走看看