zoukankan      html  css  js  c++  java
  • [leetcode]Binary Tree Level Order Traversal II

    问题描写叙述:

    Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root).

    For example:
    Given binary tree {3,9,20,#,#,15,7},

        3
       / 
      9  20
        /  
       15   7
    

    return its bottom-up level order traversal as:

    [
      [15,7],
      [9,20],
      [3]
    ]
    

    confused what "{1,#,2,3}" means?> read more on how binary tree is serialized on OJ.



    代码:

    public List<List<Integer>> levelOrderBottom(TreeNode root) {  //java
    		if(root == null)
    			return new ArrayList<>();
    			
    		Stack<TreeNode> stack = new Stack<TreeNode>();
    		stack.add(root);
    		List<TreeNode> levelList = new ArrayList<TreeNode>();
    		
    		
    		List<List<Integer>> result = new ArrayList<List<Integer>>();
    		List<List<Integer>> invert_result = new ArrayList<List<Integer>>();
    		List<Integer> tmp = new ArrayList<Integer>();
    		
    		while(!stack.isEmpty()|| !levelList.isEmpty()){
    			if(stack.isEmpty()){
    				for(int i=levelList.size()-1; i>=0; i--)
    					stack.push(levelList.get(i));
    				levelList.clear();
    				invert_result.add(tmp);
    				tmp = new ArrayList<Integer>();
    			}
    			
    			while(!stack.isEmpty()){
    				TreeNode node = stack.pop();
    				tmp.add(node.val);
    				
    				if(node.left !=null)
    					levelList.add(node.left);
    				if(node.right !=null)
    					levelList.add(node.right);
    			}
    		}
    		invert_result.add(tmp);
    		
    		//invert result 
    		for(int i=invert_result.size()-1; i>=0; i--)
    			result.add(invert_result.get(i));
    		
    		return result;
            
        }


  • 相关阅读:
    es6 学习笔记
    正则表达式 学习笔记
    knockout 学习笔记
    错误笔记
    zepto 学习笔记
    Dialog提示框
    setContentView( )方法
    SVG图形之几何图形——学习笔记2
    SVG图形之SVG文件如何嵌入HTML文档——学习笔记1
    getchar()的用法
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5314366.html
Copyright © 2011-2022 走看看