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

成都大型网站维护公司商务网站建设与维护 课件

成都大型网站维护公司,商务网站建设与维护 课件,网站策划书网站需求分析,论坛建设免费思路 根据两个顺序构造一个唯一的二叉树#xff0c;以 后先序数组的第一个元素为切割点#xff0c;先切中序数组#xff0c;根据中序数组#xff0c;反过来在切先序数组。一层一层切下去#xff0c;每次先序数组第一个元素就是节点元素。 第一步#xff1a;如果数组大小…思路 根据两个顺序构造一个唯一的二叉树以 后先序数组的第一个元素为切割点先切中序数组根据中序数组反过来在切先序数组。一层一层切下去每次先序数组第一个元素就是节点元素。 第一步如果数组大小为零的话说明是空节点了。 第二步如果不为空那么取先序数组第一个元素作为节点元素。 第三步找到先序数组第一个元素在中序数组的位置作为切割点 第四步切割中序数组切成中序左数组和中序右数组 顺序别搞反了一定是先切中序数组 第五步切割先序数组切成先序左数组和先序右数组 第六步递归处理左区间和右区间 难点就是如何切割以及边界值找不好很容易乱套。 首先要切割中序数组为什么先切割中序数组呢 切割点在先序数组的第一个元素就是用这个元素来切割中序数组的所以必要先切割中序数组。 中序数组相对比较好切找到切割点先序数组的第一个元素在中序数组的位置然后切割如下代码中我坚持左闭右开的原则 int rootIndexmap.get(preorder[preBegin]);//找到前序遍历第一个元素在中序中的位置 接下来切割先序数组。 首先后序数组的第一个元素指定不能要了这是切割点 也是 当前二叉树中间节点的元素已经用了。 先序数组的切割点怎么找 先序数组没有明确的切割元素来进行左右切割不像中序数组有明确的切割点切割点左右分开就可以了。 此时有一个很重的点就是中序数组大小一定是和先序数组的大小相同的这是必然。 中序数组我们都切成了左中序数组和右中序数组了那么先序数组就可以按照左中序数组的大小来切割切成左先序数组和右先序数组。 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* this.val val;* this.left left;* this.right right;* }* }*/ class Solution {MapInteger,Integer map;public TreeNode buildTree(int[] preorder, int[] inorder) {mapnew HashMap();for(int i0;iinorder.length;i){map.put(inorder[i],i);}return findNode(preorder,0,preorder.length,inorder,0,inorder.length);}public TreeNode findNode(int[] preorder,int preBegin,int preEnd,int[] inorder,int inBegin,int inEnd){if(preBeginpreEnd||inBegininEnd){//没有元素返回空return null;}int rootIndexmap.get(preorder[preBegin]);//找到前序遍历第一个元素在中序中的位置TreeNode rootnew TreeNode(inorder[rootIndex]);//构造结点int lenOfLeftrootIndex-inBegin;//保存中序左子树个数root.leftfindNode(preorder,preBegin1,preBeginlenOfLeft1,inorder,inBegin,rootIndex);root.rightfindNode(preorder,preBeginlenOfLeft1,preEnd,inorder,rootIndex1,inEnd);return root;} }
http://www.zqtcl.cn/news/345409/

相关文章:

  • 一个网站有多少网页简单的logo设计
  • 重庆专业网站营销长春建站免费模板
  • 企业建设网站多少钱爱的网站歌曲
  • 宁波网站优化如何欣宝儿在什么网站做直播
  • 东营网签查询系统官方网站超炫的网站模板
  • 请人做网站谁来维护南宁营销型网站设计
  • 汕头做网站的公司西安建筑科技大学华清学院教务网
  • 免费行情网站在线石家庄正规制作网站公司
  • 站长工具网凡科网商城
  • 网站开发工程师需要会写什么区别沈阳网站建设建设公司哪家好
  • 营销型网站建设的优缺点利用海康威视做直播网站
  • 阿里手机网站开发框架怎么看网站被降权
  • 电视台做网站还是APP网络推广是什么意思
  • 浙江鼎兴建设有限公司网站wordpress看不到安装的主题
  • 琪觅公司网站开发c语言开发环境
  • 在哪个网站上做实验仪器比较好信息服务平台有哪些
  • 淘宝网站的建设目的是什么意思做雕塑设计的网站
  • 猎头网站模板个人社保缴费年限怎么查询
  • 博客网站设计及说明wordpress 显示 列表
  • 佛山制作手机网站莆田自助建站软件
  • 建邺做网站价格网站做换肤
  • 佛山有什么网站室内装饰设计怎么样
  • 智能建站与正常的网站购买 做网站 客户
  • 哪个是网络营销导向网站建设的基础微信商城开店需要费用吗
  • 宁波住房和建设局网站首页福州有做网站引流的吗
  • 国外科技类网站戴尔网站建设
  • 视频播放网站模板洞泾做网站公司
  • 深圳大学网站建设中美军事最新消息
  • gta5可用手机网站大全佛山网站建设服务
  • 智能建站软件哪个好智慧城市建设评价网站