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

长沙鞋网站建设wordpress适合手机

长沙鞋网站建设,wordpress适合手机,wordpress自动视频播放器代码,wordpress 代码 视频文章目录 题目方法一#xff1a;递归 题目 方法一#xff1a;递归 preorder [3,9,20,15,7] inorder [9,3,15,20,7] 首先根据 preorder 找到根节点是 3然后根据根节点将 inorder 分成左子树和右子树 左子树 inorder [9]右子树 inorder [15,20,7]这时候3是根节点 3的左子树… 文章目录 题目方法一递归 题目 方法一递归 preorder [3,9,20,15,7] inorder [9,3,15,20,7] 首先根据 preorder 找到根节点是 3然后根据根节点将 inorder 分成左子树和右子树 左子树 inorder [9]右子树 inorder [15,20,7]这时候3是根节点 3的左子树为如下 preorder[9] 3的右子树为如下preorder[20 15 7] 现在我们只需要构造左子树和右子树即可成功把大问题化成了小问题 然后重复上边的步骤继续划分直到 preorder 空返回 null 即可 解题的关键在与找根节点和 左子树和右子树在前序遍历数组的范围一步步找出根节点然后划分出左右子树然后让根节点指向左右子树然后又对左右子树左重复动作 这个根据前序遍历的第一个节点根节点去中序遍历中找左右子树的范围可以根据前序遍历的根节点值循环去中序遍历中找因为题目保证节点不存在重复所以可以根据中序遍历维护一个节点和下标的哈希表这个前序遍历的根节点可以轻松的找到中序遍历的根节点从而在前序遍历中确定左右子树的范围 根据中序遍历维护一个key为节点value为下标的哈希表根据前序遍历的第一个节点也就是根节点去中序遍历哈希表找根节点再根据哈希表中找到的根节点在中序遍历找到左子树的区间再根据这个区间去前序遍历找到左子树的范围以及右子树的范围新建根节点指向待处理的左子树和右子树递归 // 方法一 递归哈希(到中序遍历数组中找 根节点值 然后判断出左右子树再根据前序构建树)MapInteger,Integer inorderMap new HashMap(); //记录中序遍历节点与数组下标的映射关系public TreeNode buildTree(int[] preorder, int[] inorder) {//中序遍历数组下标映射map构造for(int i 0 ; iinorder.length;i){inorderMap.put(inorder[i],i);}//构建树 前序数组 前序数组起始位置 前序数组末尾位置 中序数组起始位置 return myBuildTree(preorder, 0, preorder.length - 1, 0 );}public TreeNode myBuildTree(int[] preorder, int prebegin , int preend,int inbegin) {if ( prebegin preend) {return null;}int preorder_root prebegin; // 前序遍历中的第一个节点就是根节点int preindex inorderMap.get(preorder[preorder_root]); // 在中序遍历中定位根节点TreeNode root new TreeNode(preorder[preorder_root]); // 先把根节点建立出来int size_left_subtree preindex - 1 -inbegin; // 得到左子树中的节点数目// 递归地构造左子树并连接到根节点// 先序遍历中「从 左边界1 开始的 size_left_subtree」个元素就对应了中序遍历中「从 左边界 开始到 根节点定位-1」的元素root.left myBuildTree(preorder,prebegin 1,prebegin1 size_left_subtree,inbegin);// 递归地构造右子树并连接到根节点// 先序遍历中「从 左边界1左子树节点数目 开始到 右边界」的元素就对应了中序遍历中「从 根节点定位1 到 右边界」的元素root.right myBuildTree(preorder,prebegin1 size_left_subtree1,preend,preindex1);return root;}
http://www.pierceye.com/news/275914/

相关文章:

  • seo网站导航建设技巧精东影视传媒文化管理公司
  • 做白酒的网站怎么查网站建设是哪家公司
  • 网站域名密码免费网站推广产品
  • 网站建设一般要多少费用申请网站官网
  • 金融网站织梦模板二手车网站建设
  • 怎么自己写代码做网站做网站必须用域名吗
  • 重庆营销网站建设平台怎么添加wordpress模板
  • 网站赚取广告费深圳个人外贸网站建
  • 在线销售型的网站巢湖城市建设投资有限公司网站
  • 苏州高端网站建设设计程序源代码网站
  • 基本原理网站建设文档怎么做网站链接
  • 网站建设出售门户网站有哪些推广分类
  • 企业网站制作一般多少钱做ppt的兼职网站有哪些
  • 分公司可以建设网站淘宝联盟怎么推广
  • 苏州网站设计哪家公司好童程童美编程地址在哪里
  • 软文营销的成功案例百度优化怎么做
  • 公司网站开发怎么收费优化方案英语必修三
  • 网站改版阿里云怎么做网站301定向温州网站运营
  • 免费做简历网站有哪些网站建设与网页制作招聘
  • 怎么到国外网站去接模具订单做潍坊微信网站开发
  • 做船公司网站青海公司网站建设哪家好
  • 制作网站公司合同注意事项沈阳高端网站
  • 企业网站备案时间网站建设的服务和质量
  • 提供视频下载的网站建网站开发费用
  • 深圳电商网站开发公司上海公司排名
  • 网站建设时间规划表学校网站网页制作
  • 龙岗建网站工信部网站备案进度查询
  • 个人网站域名名字wordpress文章页获取目录名称
  • 新公司做网站有效果吗seo推广营销公司
  • 做网络推广要做网站吗网站建设首页模板