zoukankan      html  css  js  c++  java
  • 60:把二叉树打印成多行

    import java.util.ArrayList;
    import java.util.LinkedList;
    import java.util.Queue;
    
    /**
     * 面试题60:把二叉树打印成多行 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
     */
    public class _60_binary_print_rows {
    	public static void main(String[] args) {
    		TreeNode60 treeNode60 = new TreeNode60(1);
    		treeNode60.left= new TreeNode60(2);
    		treeNode60.right= new TreeNode60(3);
    		treeNode60.left.left= new TreeNode60(4);
    		
    		Solution60 solution60 = new Solution60();
    		ArrayList<ArrayList<Integer>> print = solution60.Print(treeNode60);
    		for(ArrayList<Integer> a:print){
    			for(Integer b:a){
    				System.out.print(b+"、");
    			}
    			System.out.println();
    		}
    	}
    }
    
    class Solution60 {
    	ArrayList<ArrayList<Integer>> Print(TreeNode60 pRoot) {
    		ArrayList<ArrayList<Integer>> arrayList = new ArrayList<ArrayList<Integer>>();
    		if(pRoot==null){
    			return arrayList;
    		}
    		Queue<TreeNode60> queue=new LinkedList<TreeNode60>();
    		ArrayList<Integer> row=new ArrayList<Integer>();
    		queue.add(pRoot);
    		while(!queue.isEmpty()){
    			row=new ArrayList<Integer>(); //每次重新生成一个对象
    			int len=queue.size();
    			row.clear();
    			for(int i=0;i<len;i++){  //遍历一层节点
    				if(queue.peek().left!=null){
    					queue.add(queue.peek().left);
    				}
    				if(queue.peek().right!=null){
    					queue.add(queue.peek().right);
    				}
    				row.add(queue.poll().val);
    			}
    			arrayList.add(row);
    		}
    		return arrayList;
    	}
    }
    
    class TreeNode60 {
    	int val = 0;
    	TreeNode60 left = null;
    	TreeNode60 right = null;
    
    	public TreeNode60(int val) {
    		this.val = val;
    	}
    }
    
  • 相关阅读:
    JVM 启动参数设置
    Linux文件分割与合并
    设置tomcat使用指定的jdk版本
    java字符编码
    HASH 哈希处理完数据导致数据集第一行数据缺失
    HASH 何时将key加载到h.definedata()中
    字符串 批量全角、半角转换
    SAS_正则表达式 字符意义
    正则表达式基础篇
    sas options有用的全局设置
  • 原文地址:https://www.cnblogs.com/andy-zhou/p/6553709.html
Copyright © 2011-2022 走看看