在国外一跟老外吵架口语立刻就不够用了

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 1625|回复: 7
收起左侧

[算法题] 谁能给个Serialization/Deserialization of a Binary Tree Java版完整code?

[复制链接] |试试Instant~ |关注本帖
discoveryi 发表于 2014-3-14 08:13:39 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
本帖最后由 discoveryi 于 2014-4-14 00:26 编辑

题目: http://leetcode.com/2010/09/serializationdeserialization-of-binary.html

请大侠给个java版本的完整代码, Google上找不到。。谢谢了。


 楼主| discoveryi 发表于 2014-3-25 14:49:30 | 显示全部楼层
顶。。。。。。。。。。。。。。。。。。。。。。。。。。。
回复 支持 反对

使用道具 举报

全球28万学生4.7分推荐
cqx83 发表于 2014-4-13 12:10:37 | 显示全部楼层
你这么写isNumber不是false才怪。。。
回复 支持 反对

使用道具 举报

 楼主| discoveryi 发表于 2014-4-13 12:55:28 | 显示全部楼层
回复 支持 反对

使用道具 举报

cqx83 发表于 2014-4-13 13:34:35 | 显示全部楼层
isNumber和token都是传值进去的,当然不会变了,建议lz还是把Java基础好好看看吧,感觉lz连Java和C++的不同点都不太清楚的样子。。只是把leetcode上的解法生搬硬套下来没什么意义。至于这整个函数本身我也没写过,所以不好评价
回复 支持 反对

使用道具 举报

 楼主| discoveryi 发表于 2014-4-14 00:26:11 | 显示全部楼层
cqx83 发表于 2014-4-13 13:34
isNumber和token都是传值进去的,当然不会变了,建议lz还是把Java基础好好看看吧,感觉lz连Java和C++的不同 ...

。。。。我汗。
我都懂啊,我是说我没时间去写完code。
回复 支持 反对

使用道具 举报

cqx83 发表于 2014-4-14 01:01:04 | 显示全部楼层
discoveryi 发表于 2014-4-13 08:26
。。。。我汗。
我都懂啊,我是说我没时间去写完code。

那你的时间都去哪儿了。。
回复 支持 反对

使用道具 举报

iYxAc 发表于 2015-8-16 22:27:12 | 显示全部楼层
  1. /**
  2. * Definition of TreeNode:
  3. * public class TreeNode {
  4. *     public int val;
  5. *     public TreeNode left, right;
  6. *     public TreeNode(int val) {
  7. *         this.val = val;
  8. *         this.left = this.right = null;
  9. *     }
  10. * }
  11. */
  12. class Solution {
  13.     /**
  14.      * This method will be invoked first, you should design your own algorithm
  15.      * to serialize a binary tree which denote by a root node to a string which
  16.      * can be easily deserialized by your own "deserialize" method later.
  17.      */
  18.     public String serialize(TreeNode root) {
  19.         String result = "";
  20.         if (root == null) {
  21.             return result += "#,";
  22.         }
  23.         
  24.         result += root.val;
  25.         result += ",";
  26.         
  27.         result += serialize(root.left);
  28.         result += serialize(root.right);
  29.       
  30.         return result;
  31.     }
  32.    
  33.     /**
  34.      * This method will be invoked second, the argument data is what exactly
  35.      * you serialized at method "serialize", that means the data is not given by
  36.      * system, it's given by your own serialize method. So the format of data is
  37.      * designed by yourself, and deserialize it here as you serialize it in
  38.      * "serialize" method.
  39.      */
  40.     public TreeNode deserialize(String data) {
  41.         // 转成字符串,好处理一些
  42.         String[] strList = data.split(",");
  43.         ArrayList<String> nodeList = new ArrayList<String>(strList.length);
  44.         for (String str : strList) {
  45.             nodeList.add(str);
  46.         }

  47.         TreeNode root = deserializeHelper(nodeList);
  48.         return root;
  49.     }
  50.    
  51.     private TreeNode deserializeHelper(ArrayList<String> nodeList) {
  52.         if (nodeList == null || nodeList.size() == 0) {
  53.             return null;
  54.         }
  55.         String val = nodeList.get(0);
  56.         nodeList.remove(0);
  57.         if (val.equals("#")) {
  58.             return null;
  59.         }
  60.         TreeNode root = new TreeNode(Integer.parseInt(val));
  61.         root.left = deserializeHelper(nodeList);
  62.         root.right = deserializeHelper(nodeList);
  63.         return root;
  64.     }
  65. }
复制代码
我贴个lintcode的,FYI
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2018-5-23 23:15

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表