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

深圳模板网站建设公方案网站有哪些

深圳模板网站建设公,方案网站有哪些,WordPress文章相似推荐,网站建设管理自查报告C递归实现验证⼆叉搜索树 文章目录 C递归实现验证⼆叉搜索树题目链接题目描述解题思路C算法代码#xff1a; 题目链接 98. 验证二叉搜索树 - 力扣#xff08;LeetCode#xff09; 题目描述 给你⼀个⼆叉树的根节点root#xff0c;判断其是否是⼀个有效的⼆叉搜索树。 有效⼆…C递归实现验证⼆叉搜索树 文章目录 C递归实现验证⼆叉搜索树题目链接题目描述解题思路C算法代码 题目链接 98. 验证二叉搜索树 - 力扣LeetCode 题目描述 给你⼀个⼆叉树的根节点root判断其是否是⼀个有效的⼆叉搜索树。 有效⼆叉搜索树定义如下 节点的左⼦树只包含⼩于当前节点的数。节点的右⼦树只包含⼤于当前节点的数。所有左⼦树和右⼦树⾃⾝必须也是⼆叉搜索树。 解题思路 利用中序遍历 后序遍历按照左⼦树、根节点、右⼦树的顺序遍历⼆叉树的所有节点通常⽤于⼆叉搜索树相关题⽬。 算法思路 如果⼀棵树是⼆叉搜索树那么它的中序遍历的结果⼀定是⼀个严格递增的序列。 因此我们可以初始化⼀个⽆穷⼩的全区变量⽤来记录中序遍历过程中的前驱结点。那么就可以在 中序遍历的过程中先判断是否和前驱结点构成递增序列然后修改前驱结点为当前结点传⼊下⼀ 层的递归中。 算法流程 初始化⼀个全局的变量**prev⽤来记录中序遍历过程中的前驱结点的val** 中序遍历的递归函数中 a.设置递归出⼝rootnullptr的时候返回true b. 先递归判断左⼦树是否是⼆叉搜索树⽤**retleft**标记 c.然后判断当前结点是否满⾜⼆叉搜索树的性质⽤**retcur**标记 如果当前结点的**val⼤于prev说明满⾜条件retcur改为true**如果当前结点的val⼩于等于**prev说明不满⾜条件retcur改为false** d.最后递归判断右⼦树是否是⼆叉搜索树⽤**retright**标记 只有当**retleft、retcur和retright都是true的时候才返回true**。 C算法代码 class Solution { long prev LONG_MIN; public: bool isValidBST(TreeNode* root) { if(root nullptr) return true; bool left isValidBST(root-left); // 剪枝 if(left false) return false; bool cur false; if(root-val prev) cur true; // 剪枝 if(cur false) return false; prev root-val; bool right isValidBST(root-right); return left right cur; } };
http://www.zqtcl.cn/news/992848/

相关文章:

  • 大连 网站建设昆明建设网站哪家好
  • 网站首页设计及运行效果网站建设与管理任务分工
  • 自己建设论坛网站家用电脑搭建服务器
  • 做网站上海公司企业网站内页
  • 手机网站seo山东网站建设网
  • 溧阳 招网站开发wordpress 占内存
  • 网站seo 工具做网站建设公司排名
  • 丹阳网站建设企业建设网站管理制度
  • 怎样审请网站集成装修全屋定制
  • 好看响应式网站模板下载可以访问的国外网站
  • 做电脑网站宽度网站建立安全连接失败
  • 西安网站设计哪家公司好my12777域名查询
  • 西宁网站建设排名网站设计对网站建设有哪些意义?
  • 北京平台网站建设价位怎样做网站卖网站
  • 网站建设与维护试题a卷建设银行官方网站买五粮液酒
  • 安装网站源码做文艺文创产品的网站
  • 软件公司网站设计与制作电子商务成功网站的案例
  • 购物车功能网站怎么做的建设众筹类网站
  • 哪些网站做的美爱站工具网
  • 对网站开发的理解源码资源网
  • 有哪些做兼职的网站网站建设的项目计划书
  • 如何做行业网站江苏城乡建设部网站首页
  • 淘客网站怎么做 知乎wordpress 删除插件
  • 深圳市住房和建设局人事调整公司网站seo怎么做
  • 小型影视网站源码好看的个人博客
  • 哈密建设厅网站西安培训机构
  • 网站建设公众号小程序开发密云网站开发
  • 南宁网站开发制作网站数据库分离怎么做
  • 不能打开建设银行网站怎么办自己做网站要会什么软件下载
  • 微软网站怎么做的diy个性定制