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

做外贸出口衣服的网站职高网站建设例题

做外贸出口衣服的网站,职高网站建设例题,修改wordpress主题js,物联网专业就业方向题目 来源#xff1a;JZ26 树的子结构 描述 输入两棵二叉树A#xff0c;B#xff0c;判断B是不是A的子结构。#xff08;我们约定空树不是任意一个树的子结构#xff09; 假如给定A为{8,8,7,9,2,#,#,#,#,4,7}#xff0c;B为{8,9,2}#xff0c;2个树的结构如下#xff…题目 来源JZ26 树的子结构 描述 输入两棵二叉树AB判断B是不是A的子结构。我们约定空树不是任意一个树的子结构 假如给定A为{8,8,7,9,2,#,#,#,#,4,7}B为{8,9,2}2个树的结构如下可以看出B是A的子结构 数据范围: 0 A的节点个数 10000 0 B的节点个数 10000 示例1 输入 {8,8,7,9,2,#,#,#,#,4,7},{8,9,2} 返回值 true 示例2 输入 {1,2,3,4,5},{2,4} 返回值 true 示例3 输入 {1,2,3},{3,1} 返回值 false 解析 官方题解讲得一塌糊涂关键概念没解释就算了代码逻辑还非常混乱。这题的难度应该算较难而不是中等因为有个关键点很难想到。假设两棵树分别为A,BB为子树则B为A的子树有如下三种情况 1.B和A的根节点相同B为A的子树。 2.B和A的根节点不同B为A的左子树的子树。 3.B和A的根节点不同B为A的右子树的子树。 显然这三种情况都需要递归但因为第一种情况和后两种是有本质区别的所以第一种情况就需要单独写一个函数来判断假设为IsSubtree。由于题目规定空树不是任意树的子树所以HasSubtree开头就要排除B为空的情况则这会引入一个关键点IsSubtree中传入的B树的节点如果为空则当前的IsSubtree的递归层数至少是两层该B树节点不可能在第一层而且前几层一定都是匹配成功的所以一定要返回true。 下面举例说明 显然当递归层中的B树节点为空时前几层的节点是匹配成功的所以要返回true。图中总共要处理两次B树节点为空的情况两次都要返回trueB树才能正确匹配A树。这点确实是比较难的这点想不到这题就不可能做对。 关键点解决了IsSubtree的算法就不难写了 1.判断B树节点是否空若空则返回true。 2.判断A树节点是否为空若空则返回false。 3.此时A树节点和B树节点都不空判断它们的值是否相等若不相等则返回false。 4.此时A树节点和B树节点都不空且相等则递归判断它们的左右子树是否也都相等。 IsSubtree的实现如下 bool IsSubtree(TreeNode* pRoot1, TreeNode* pRoot2) {if (!pRoot2 ) return true;if (!pRoot1 || pRoot1-val ! pRoot2-val)return false;return IsSubtree(pRoot1-left, pRoot2-left) IsSubtree(pRoot1-right, pRoot2-right); }这个函数是本题的核心写对了后面就很简单了假设主函数为HasSubtree则算法如下 1.判断B树或A树的节点是否空空则返回false题目规定空树不是任意树的子树。 2.调用IsSubtree判断B和A的根节点是否相同且B是否为A的子树如果是则返回true。 3.此时B和A的根节点不同递归判断B是否为A的左右子树的子树。 完整代码如下 bool IsSubtree(TreeNode* pRoot1, TreeNode* pRoot2) {if (!pRoot2 ) return true;if (!pRoot1 || pRoot1-val ! pRoot2-val)return false;return IsSubtree(pRoot1-left, pRoot2-left) IsSubtree(pRoot1-right, pRoot2-right); } bool HasSubtree(TreeNode* pRoot1, TreeNode* pRoot2) {if (!pRoot1 || !pRoot2)return false;return IsSubtree(pRoot1, pRoot2) || HasSubtree(pRoot1-left, pRoot2)|| HasSubtree(pRoot1-right, pRoot2) ; }
http://www.hkea.cn/news/14507553/

相关文章:

  • 做数码测评的网站wordpress英文站群
  • 网站开发技术支持与保障2022中国进入一级战备了吗
  • 网站怎么做参考文献成都住建局官网网签
  • 如何让百度k掉网站社区做图网站有哪些
  • 哪些网站可以做店铺推广营销型网站制作费用
  • 河北省住房和城乡建设局网站下载登录微信
  • php网站的数据库在哪佛山营销网站建设
  • 哪些网站做简历合适长沙人才招聘网长沙58同城招聘网
  • dede双语网站杭州软装设计公司哪家好
  • dedecms 获取网站地址caddy搭建wordpress
  • 唯品会网站架构做网站厦门
  • 徐州网站建设求职简历河北网站推广公司
  • 建网站保定如何制作网页链接二维码
  • 花生壳做的网站稳定吗建筑网站模板
  • 如何使用网站模板建设网站鞍山黄殿满
  • 浙江圣大建设集团有限公司网站网站seo关键词排名查询
  • 手机网站模板 优帮云模板兔自用主题WordPress
  • 企业网站的步骤wordpress 图库
  • 房产建设网站怎么才能登网站做外贸
  • 网站建设需要学习哪些cloudflare cdn
  • 网站框架怎么做程序员能转行做网站维护不
  • 建设网站需要的资金清单网站开发一定要用框架吗
  • 哪个网站专做民宿企业app软件定制开发环节
  • 魔鬼做交易网站司法局网站开发方案
  • 软件下载网站怎么赚钱劳务派遣做网站的好处
  • 微网站域名建设通网站官网
  • dz网站建设国学大师网站是哪里做的
  • 电子商务网站开发 刘兰娟做网站 买空间
  • 2017优秀网站设计欣赏有没有做兼职的网站
  • 域名申请后怎么建网站wordpress 京东导购