zoukankan      html  css  js  c++  java
  • 序列化二叉树

    题目描述

    请实现两个函数,分别用来序列化和反序列化二叉树
     
    /*
    public class TreeNode {
        int val = 0;
        TreeNode left = null;
        TreeNode right = null;
    
        public TreeNode(int val) {
            this.val = val;
    
        }
    
    }
    */
    public class Solution {
        private int idx = -1;
        String Serialize(TreeNode root) {
            StringBuffer sb = new StringBuffer();
            if(root == null) {
                sb.append("#,");
                return sb.toString();
            }
            sb.append(root.val + ",");
            sb.append(Serialize(root.left));
            sb.append(Serialize(root.right));
            return sb.toString();
      }
        TreeNode Deserialize(String str) {
            idx++;
            String[] strr = str.split(",");
            TreeNode node = null;
            if(!strr[idx].equals("#")) {
                node = new TreeNode(Integer.valueOf(strr[idx]));
                node.left = Deserialize(str);
                node.right = Deserialize(str);
            }
            return node;
      }
    }
  • 相关阅读:
    Jenkins 插件管理
    持续集成 目录
    gitlab 目录
    jenkins 目录
    POJ 2828
    POJ 2782
    POJ 2725
    POJ 2769
    POJ 2739
    POJ 2707
  • 原文地址:https://www.cnblogs.com/yihangZhou/p/10522218.html
Copyright © 2011-2022 走看看