package Tree; /** * Created by gmy on 2017/6/19. */ public class Solution { public TreeNode addOneRow(TreeNode t,int v,int d){ if(d==1){ TreeNode n=new TreeNode(v); System.out.println(n.val); n.left=t; return n; } insert(v,t,1,d); return t; } public void insert(int val,TreeNode node,int depth,int n){ if(node==null) return ; if(depth==n-1){ TreeNode t=node.left; node.left=new TreeNode(val); node.left.left=t; t=node.right; node.right=new TreeNode(val); node.right.right=t; } else{ insert(val,node.left,depth+1,n); insert(val,node.right,depth+1,n); } } }
树
package Tree; /** * Created by gmy on 2017/6/19. */ public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { this.val=x; } }
测试
package Tree; /** * Created by gmy on 2017/6/19. */ public class test { public static void main(String[] args) { //创建树 TreeNode treeNode=new TreeNode(4); TreeNode treeNode1=new TreeNode(2); TreeNode treeNode2=new TreeNode(6); TreeNode treeNode3=new TreeNode(3); TreeNode treeNode4=new TreeNode(1); TreeNode treeNode5=new TreeNode(5); treeNode.left=treeNode1; treeNode.right=treeNode2; treeNode1.left=treeNode3; treeNode1.right=treeNode4; treeNode2.left=treeNode5; Solution s=new Solution(); pre( s.addOneRow(treeNode,2,2)); } public static void pre(TreeNode treeNode){//先序遍历 if(treeNode!=null){ System.out.print(treeNode.val+" "); pre(treeNode.left); pre(treeNode.right); } } }