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

网站要咋做宁波网站推广公司价格

网站要咋做,宁波网站推广公司价格,可靠的东莞网站推广,惠州做网站公司哪家好题目描述 给出一个二叉树,请由该二叉树生成一个新的二叉树,它满足其树中的每个节点将包含原始树中的左子树和右子树的和。左子树表示该节点左侧叶子节点为根节点的一颗新树;右子树表示该节点右侧叶子节点为根节点的一颗新树。 输入描述 2行整数&#…

题目描述

给出一个二叉树,请由该二叉树生成一个新的二叉树,它满足其树中的每个节点将包含原始树中的左子树和右子树的和。左子树表示该节点左侧叶子节点为根节点的一颗新树;右子树表示该节点右侧叶子节点为根节点的一颗新树。

输入描述

2行整数,第1行表示二叉树的中序遍历,第2行表示二叉树的前序遍历,以空格分割。

输出描述

1行整数,表示求和树的中序遍历,以空格分割。

例1:

输入:
-3 12 6 8 9 -10 -7
8 12 -3 6 -10 9 -7
输出:
0 3 0 7 0 2 0
/*
-3 12 6 8 9 -10 -7
8 12 -3 6 -10 9 -7
0 3 0 7 0 2 0*/
public class 二叉树计算 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int[] mid = Arrays.stream(sc.nextLine().trim().split(" ")).mapToInt(Integer::parseInt).toArray();int[] pre = Arrays.stream(sc.nextLine().trim().split(" ")).mapToInt(Integer::parseInt).toArray();// 构建树Node root = buildTree(mid, pre);// 计算每个节点的值sumTree(root);// 中序遍历输出结果printRes(root);}private static void printRes(Node root) {if (root == null){return;}printRes(root.left);System.out.print(root.val + " ");printRes(root.right);}private static Integer sumTree(Node node) {if (node == null){return 0;}int nodeLeftSum = sumTree(node.left);int nodeRightSum = sumTree(node.right);int valOld = node.val;node.val = nodeLeftSum + nodeRightSum;return node.val + valOld;}private static Node buildTree(int[] mid, int[] pre) {HashMap<Integer, Integer> midMap = new HashMap<>();for (int i = 0; i < mid.length; i++) {midMap.put(mid[i], i);}return getTree(pre, 0, pre.length-1, mid, 0, mid.length-1, midMap);}private static Node getTree(int[] pre, int preIndexStart, int preIndexEnd, int[] mid,int midIndexStart, int midIndexend, HashMap<Integer, Integer> midMap) {if (preIndexStart > preIndexEnd || midIndexStart > midIndexend){return null;}int rootVal = pre[preIndexStart];Node root = new Node(rootVal);// 根据root节点在中序遍历中的下标,可以获取root节点的左右节点的长度Integer midRootIndex = midMap.get(rootVal);int leftSize = midRootIndex - midIndexStart;root.left = getTree(pre,preIndexStart+1,preIndexStart + leftSize,mid, midIndexStart, midRootIndex - 1, midMap);root.right = getTree(pre,preIndexStart + leftSize + 1,preIndexEnd,mid, midRootIndex + 1, midIndexend, midMap);return root;}static class Node{int val;Node left;Node right;public Node(int val) {this.val = val;}}
}

http://www.ds6.com.cn/news/14666.html

相关文章:

  • 泰兴网站制作如何做推广引流赚钱
  • 不用服务器做视频网站数据分析培训机构哪家好
  • 网站前台模块包括什么软件seo优化的主要任务包括
  • 黄山旅游攻略五日游百度关键词优化快速排名软件
  • 企业网站制作心得seo技术服务外包公司
  • 做产品网站淘宝百度网站模板图片
  • 政府网站建设厦门网站设计公司
  • 盘石做的网站网络优化的流程
  • 福田做网站多少钱学生个人网页制作
  • 免费漂亮ppt模板下载seo和sem是什么意思啊
  • 网站建设人员工资怎么注册网站 个人
  • 谁给个国外的黄色网站怎样建立一个网络销售平台
  • 怎么做网站的移动端适配版百度域名注册
  • 重庆专业网站建设公司哪家好海外推广渠道都有哪些
  • 网站 用什么语言网站整站优化推广方案
  • 大岭山网站百度店面定位怎么申请
  • 做网站的方法及措施新冠疫情最新消息今天
  • 珍佰农 商城网站建设网络推广都是收费
  • 上海门户网站建设it培训机构排名
  • 三个字公司名字祁阳seo
  • 惠新西街网站建设360免费建站教程
  • 专业网站开发设计拉新app推广平台排名
  • 环保网站模板优化防疫措施+科学精准防控
  • 增城做网站优化网站推广
  • 网站规划应遵循的原则有哪些电商产品推广方案
  • 巩义网站建设方式优化软文范例大全
  • 建设新网站征求意见天津seo代理商
  • 挂机宝可以做网站广州最新消息
  • 重庆玖玺国际做网站软文代写兼职
  • 做网站源码需要多少钱百度收录量