创建二叉树的所有深度上的节点链表

创建二叉树的所有深度上的节点链表

 

深搜:
 
public static ArrayList<ArrayList<TreeNode>> getRes(TreeNode root){
             ArrayList<ArrayList<TreeNode>> res = new ArrayList<ArrayList<TreeNode>>();
             getRes(res,root,0);
             return res;
}
      
public static void getRes(ArrayList<ArrayList<TreeNode>> res,TreeNode root, int level){
             if( root== null){
                   return;
             }
             ArrayList<TreeNode> newlist ;
             if( res.get( level).size()== level){
                   newlist = new ArrayList<TreeNode>();
             } else{
                   newlist = res.get( level);
             }
             newlist.add( root);
             getRes(res,root.leftNode,level+1);
             getRes(res,root.rightNode,level+1);
}
 
      





posted @ 2015-05-26 18:16  外禅内定,程序人生  阅读(228)  评论(0编辑  收藏  举报