根据中序和前序遍历结果构建二叉树

根据中序和前序遍历结果构建二叉树二叉树的构建必须拥有中序遍历 中序 前序 中序 后序 才可以唯一构建成功

大家好,欢迎来到IT知识分享网。

public class Main1 { 
    public static class TreeNode{ 
    int val; TreeNode left; TreeNode right; TreeNode(int x) { 
    val=x; } } public static void main(String[] args) { 
    int[] in=new int[] { 
   4,7,2,1,5,3}; int[] pre=new int[] { 
   1,2,4,7,3,5}; TreeNode root=build(in,0,in.length-1,pre,0,pre.length-1); bianli(root); } public static void bianli(TreeNode root) { 
    if(root==null) { 
    return ; } bianli(root.left); System.out.println(root.val); bianli(root.right); } public static TreeNode build(int[] in,int inleft,int inright,int[] pre, int preleft,int preright) { 
    if(inleft>inright||preleft>preright) { 
    return null; } TreeNode root=new TreeNode(pre[preleft]); for(int i=inleft;i<=inright;i++) { 
    if(in[i]==pre[preleft]) { 
    root.left=build(in,inleft,i-1,pre,preleft+1,preleft+i-inleft); root.right=build(in,i+1,inright,pre,preleft+i-inleft+1,preright); } } return root; } } 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/110218.html

(0)
上一篇 2026-02-02 07:34
下一篇 2026-02-02 08:01

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信