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

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

深搜:
 
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);
}
 
      





原文地址:https://www.cnblogs.com/ZhangJinkun/p/4531338.html