当前位置: 首页 > news >正文

柳州专业做网站wap网站为什么没有了

柳州专业做网站,wap网站为什么没有了,网站兼容所有浏览器,wordpress语言包更新目录 1、题目介绍 2、解题思路 2.1、详细过程图解 2.2、代码描述 2.3、完整代码 1、题目介绍 原题链接#xff1a;297. 二叉树的序列化与反序列化 - 力扣#xff08;LeetCode#xff09; 示例 1#xff1a; 输入#xff1a;root [1,2,3,null,null,4,5] 输出#…  目录 1、题目介绍 2、解题思路  2.1、详细过程图解 2.2、代码描述  2.3、完整代码 1、题目介绍 原题链接297. 二叉树的序列化与反序列化 - 力扣LeetCode 示例 1 输入root [1,2,3,null,null,4,5] 输出[1,2,3,null,null,4,5] 示例 2 输入root [ ] 输出[ ] 示例 3 输入root [1] 输出[1] 示例 4 输入root [1,2] 输出[1,2] 提示 树中结点数在范围 [0, 104] 内-1000 Node.val 1000 2、解题思路  二叉树序列化就是将内存中的二叉树变成硬盘中的字符串形式并且要求每个二叉树能够对应一个唯一的字符串。 二叉树反序列化就是将这个唯一字符串在内存中还原回对应的二叉树。 2.1、详细过程图解 这里采用先序遍历完成序列化。只要理解了一种遍历的序列化其他遍历包括不限于中序遍历、后序遍历、层次遍历的序列化都是依葫芦画瓢了。 先说规则 通过先序遍历的顺序进行访问二叉树假如访问到结点1就将1写入字符串中同理结点2就是写入2到节点中如果遇到空结点则在字符串中存入一个标识符号这里我采用井号 # 来表述空结点。同时两个节点之间需要使用下划线 _ 隔开也可以理解为表示一个结点值的结束。 序列化过程图解 开始时字符串str为空。按照先序遍历首先是访问结点1所以此时字符串中存入了1和表示结点值结束的下划线 _。 str[ ] 1_ 接着先序遍历访问到结点2继续将2和下划线_拼接进字符串str中。 str[ ] 1_2_ 接着先序遍历访问到空结点此时将表示空姐点的标识符号井号#下划线_拼接进字符串str中。 str[ ] 1_2_#_ 同理依次进行遍历 str[ ] 1_2_#_#_ 通过依次遍历最后得到str字符串 str[ ] 1_2_#_#_3_4_#_#_5_#_#_ 这个str字符串即为二叉树的序列化而用字符串通过先序遍历还原回二叉树就成为反序列化。 反序列化过程图解 str从前往后遍历按照先序遍历【头左右】的顺序还原回二叉树。 依次遍历str最终完成还原回原二叉树。 2.2、代码描述  使用递归将二叉树按照先序遍历生成对应的序列化字符串ret。 // Encodes a tree to a single string.public String serialize(TreeNode root) {if(root null) //等于空时返回井号标识符{return #_;}String res root.val _; //将结点值与下划线_拼接res serialize(root.left); //将左子树返回的字符串拼接到当前的ret后res serialize(root.right); //将右子树返回的字符串拼接到当前的ret后return ret;} 使用split方法对字符串进行拆分拆分出来的值放入一个数组中再用队列依次接收数组的 值。 // Decodes your encoded data to tree.public TreeNode deserialize(String data) {String[] val data.split(_); //将data字符串按照下划线_为分隔符对字符串进行拆分QueueString queue new LinkedList(); //队列for(int i 0;i val.length; i) {queue.add(val[i]); //将拆分出来的值依次入队}return reconPreOrder(queue); //返回队列} 将得到的队列依次出队通过递归判断是否为空标识符井号#是则返回null否则将值存入新开辟的头结点root中再通过递归方式创建左子树以及右子树。最后将头结点root返回即完成二叉树的反序列化。 public static TreeNode reconPreOrder(QueueString queue){String val queue.poll(); //出队if(val.equals(#)) //等于#则返回null{return null;}TreeNode root new TreeNode(Integer.valueOf(val)); //创建头结点存放val值root.left reconPreOrder(queue); //从递归中获取左子树信息root.right reconPreOrder(queue); //从递归中获取右子树信息return root; //最后返回头结点} 2.3、完整代码 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val x; }* }*/ public class Codec {// Encodes a tree to a single string.public String serialize(TreeNode root) {if(root null){return #_;}String res root.val _;res serialize(root.left);res serialize(root.right);return res;}// Decodes your encoded data to tree.public TreeNode deserialize(String data) {String[] val data.split(_);QueueString queue new LinkedList();for(int i 0;i val.length; i){queue.add(val[i]);}return reconPreOrder(queue);}public static TreeNode reconPreOrder(QueueString queue){String val queue.poll();if(val.equals(#)){return null;}TreeNode root new TreeNode(Integer.valueOf(val));root.left reconPreOrder(queue);root.right reconPreOrder(queue);return root;} }// Your Codec object will be instantiated and called as such: // Codec ser new Codec(); // Codec deser new Codec(); // TreeNode ans deser.deserialize(ser.serialize(root)); 彩蛋 在查看其他题解时发现了一个有趣的解题方法请勿模仿哈哈哈哈哈 关于二叉树遍历的精讲 【算法与数据结构】二叉树的三种遍历代码实现上—— 用递归序知识点讲解_Hacynn的博客-CSDN博客https://blog.csdn.net/zzzzzhxxx/article/details/133609612?spm1001.2014.3001.5502【算法与数据结构】二叉树的三种遍历代码实现下—— 非递归方式实现大量图解-CSDN博客https://blog.csdn.net/zzzzzhxxx/article/details/133669283?spm1001.2014.3001.5502 如果觉得作者写的不错求给博主一个大大的点赞支持一下你们的支持是我更新的最大动力 如果觉得作者写的不错求给博主一个大大的点赞支持一下你们的支持是我更新的最大动力 如果觉得作者写的不错求给博主一个大大的点赞支持一下你们的支持是我更新的最大动力
http://www.hkea.cn/news/14399774/

相关文章:

  • 网站建设包含哪些费用qq空间主页制作网站
  • 临沂购买模板建站网站502 解决办法
  • 范例网站怎么做深圳百度关键词推广
  • 厦门海绵城市建设官方网站做外贸做的很好的网站
  • 帮朋友做网站wordpress html模式
  • 建站是什么东西图片在线设计平台
  • 吉祥物设计网站厦门网站建设合同
  • 建设银行温州支行官方网站网站开发科普书
  • 网站漂浮怎么做惠州seo按天计费
  • 无锡做企业网站西安编程培训机构
  • 做ios试玩推广网站wordpress 腾讯
  • 商城网站建设的步骤开外贸公司的流程及费用
  • 云南网络网站推广外贸网站交易平台
  • 工地招聘网站自建网站外贸怎么做
  • 电脑用虚拟机做网站wordpress 上传错误
  • mvc5网站开发之美电子版搭建网站的企业
  • 做国际贸易做什么网站那间公司做网站好
  • 石家庄网站建设有了代刷网的源码怎么做网站
  • phpmysql网站开发入门与提高找做仿网站
  • 优惠券网站要怎么做网站备案期间可以用二级域名访问网站吗
  • 软文网站上海工商网企业信息查询系统官网
  • 网站建设的经济可行性什么语言网站比较安全
  • 如何做企业网站php短视频seo搜索优化
  • 网站制作免费软件做网站或者app
  • 网站开发设计工程师岗位职责六安建六安建设网站
  • 建网站教程视频下载南京网站建设价格
  • 外贸网站如何做外链做营销看的网站有哪些内容
  • 英文旅游网站建设江苏网页定制
  • 辛集seo网站优化电话网站seo流程
  • 娱乐平台网站开发免费网站定制开发流程和功能