//由先根和中根遍历建立二叉树 public class bitree{ public bitree(String preorder,String inorder,int preindex,int inindex,int count){ if(count>0){ //先根中根为空 char r=preorder.charAt(preindex); //取先根遍历中的第一个结点作为根节点 int i=0; for(;i<count;i++) //寻找根节点在中根遍历序列中的位置 if(r==inorder.charAt(i+inindex)) break; root=new bitreeNode(r); //建立树的根节点 root.setlchild(new bitree(preorder,inorder,preindex+1,inindex,i).root); //建立树的左子树 root.setrchild(new bitree(preorder,inorder,preindex+1+i,inindex+1+i,count-i-1).root); //建立树的右子树 } } //由标明空子树先根遍历序列建立一颗二叉树,并返回其根节点 private static int index=0; //用于记录prestr的索引值 public bitree(String prestr){ char c=prestr.c
java由先根中根遍历序列建立二叉树,由标明空子树建立二叉树,有完全二叉树顺序存储结构建立二叉链式存储结构
最新推荐文章于 2021-05-24 20:41:45 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)