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

济南优化seo网站建设局域网网站域名怎么做

济南优化seo网站建设,局域网网站域名怎么做,个人网站建设报价,企业网站推广的方法有1 序列化与反序列化 二叉树的序列化与反序列化 1.1 实现思路 方式一:前序遍历 通过前序遍历方式实现二叉树的序列化将结果存入队列中要注意空节点也要存null 方式二:层序遍历 层序遍历也是用队列实现注意从左到右,遇到空节点存null 1.2 …

1 序列化与反序列化

二叉树的序列化与反序列化

1.1 实现思路
  1. 方式一:前序遍历
    1. 通过前序遍历方式实现二叉树的序列化
    2. 将结果存入队列中
    3. 要注意空节点也要存null
  2. 方式二:层序遍历
    1. 层序遍历也是用队列实现
    2. 注意从左到右,遇到空节点存null
1.2 代码实现
/*** 二叉树的序列化与反序列化** @author wen*/
public class SerializeAndReconstructTree {public static class Node {public int val;public Node left;public Node right;public Node(int val) {this.val = val;}}/*** 二叉树的序列化(前序遍历实现)** @param head 头节点* @return 返回一个队列*/public static Queue<String> preSerial(Node head) {Queue<String> queue = new LinkedList<>();pres(queue, head);return queue;}private static void pres(Queue<String> queue, Node head) {if (head == null) {queue.add(null);} else {queue.add(String.valueOf(head.val));pres(queue, head.left);pres(queue, head.right);}}/*** 二叉树的反序列化(前序遍历实现)** @param preQueue 存着二叉树序列化的队列* @return 返回,反序列化的二叉树头节点*/public static Node buildByPreQueue(Queue<String> preQueue) {if (preQueue == null || preQueue.isEmpty()) {return null;}return preBuild(preQueue);}private static Node preBuild(Queue<String> preQueue) {String val = preQueue.poll();if (val == null) {return null;}Node head = new Node(Integer.parseInt(val));head.left = preBuild(preQueue);head.right = preBuild(preQueue);return head;}/*** 二叉树序列化(层序遍历实现)** @param head 二叉树头节点* @return 返回序列化后的队列*/public static Queue<String> levelSerial(Node head) {Queue<String> ans = new LinkedList<>();if (head == null) {ans.add(null);} else {ans.add(String.valueOf(head.val));Queue<Node> help = new LinkedList<>();help.add(head);while (!help.isEmpty()) {Node cur = help.poll();if (cur.left != null) {ans.add(String.valueOf(cur.left.val));help.add(cur.left);} else {ans.add(null);}if (cur.right != null) {ans.add(String.valueOf(cur.right.val));help.add(cur.right);} else {ans.add(null);}}}return ans;}/*** 反序列化(层序遍历实现)** @param levelQueue 序列化存入的队列* @return 返回,反序列化的二叉树头节点*/public static Node buildByLevelQueue(Queue<String> levelQueue) {if (levelQueue == null || levelQueue.isEmpty()) {return null;}Node head = generateNode(levelQueue.poll());Queue<Node> queue = new LinkedList<>();if (head != null) {queue.add(head);}Node node = null;while (!queue.isEmpty()) {node = queue.poll();node.left = generateNode(levelQueue.poll());node.right = generateNode(levelQueue.poll());if (node.left != null) {queue.add(node.left);}if (node.right != null) {queue.add(node.right);}}return head;}private static Node generateNode(String val) {if (val == null) {return null;}return new Node(Integer.parseInt(val));}
}
http://www.yayakq.cn/news/141902/

相关文章:

  • 兖州城乡建设局网站重庆网站建设优化排名
  • 男女视频做爰的网站济南怎么做网站
  • 网站建设中模版谷歌google官方下载
  • 专业网站优化公司排名商业软文代写
  • 西乡县门户网站网站推广免费
  • 有知道做网站的吗有做游戏广告的网站
  • 网视易网站建设现在室内设计师好做吗
  • 浙江建设工程造价信息网站dede 网站标题
  • 河北省住房和城乡建设部网站广告策划活动公司
  • 怎么个人做网站网站建设领域的基本五大策略要学会
  • 做网站那些好拼多多跨境电商平台
  • 网站安全建设申请网站文章更新注意什么
  • 更合网站设计莞城做网站
  • 永川网站建设熊掌号jquery网站模板
  • 内网做网站需要空间吗做社交的招聘网站
  • 企业网站推广方案免备案免费空间
  • 做美食网站视频下载湖南招聘信息网官网
  • 湖南建立网站营销策划烟台网站建设联系电话
  • 诸城做网站收费wordpress管理员登陆
  • 福州微信网站开发wordpress微信公众号小工具
  • 北京网站建设公司电话江都建设招标网站
  • 兰州网站建设q.479185700棒重庆建设安全管理网
  • 测网站打开的速度的网址とらぶるだいあり しすた在线
  • 网站建设需要精通什么知识软件外包公司好吗
  • 青海省高等级公路建设管局网站晋江网络推广怎么做
  • 服装网站开发目的wordpress建站上传不了图片
  • 怎么做网站简单的旅游网站开题报告
  • 计算机网站设计论文企业策划工作内容
  • 购物网站如何备案网站建设 数据可视化
  • 如何用vs做网站昆山网站建设首页