首页 > 其他分享 >力扣98 验证二叉搜索树

力扣98 验证二叉搜索树

时间:2023-02-03 21:24:12浏览次数:42  
标签:左子 右子 二叉 力扣 98 搜索 节点

题目:

给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。
有效 二叉搜索树定义如下:
    节点的左子树只包含 小于 当前节点的数。
    节点的右子树只包含 大于 当前节点的数。
    所有左子树和右子树自身必须也是二叉搜索树。

示例:

输入:root = [2,1,3]
输出:true

思路:

这题最容易出现的错误思路就是:单纯的比较左节点小于中间节点,右节点大于中间节点。即使递归处理了,得到的结果也是错的,比如遇到以下情况:这里10>6,但是每一层都满足单层逻辑。

 

标签:左子,右子,二叉,力扣,98,搜索,节点
From: https://www.cnblogs.com/cjhtxdy/p/17090444.html

相关文章

  • 【力扣算法题-Python】1、两数的和
    (【力扣-Python】1、两数的和)题目题目:两数之和。难度:简单。给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返......
  • 力扣700 二叉搜索树中的搜索
    题目:给定二叉搜索树(BST)的根节点root和一个整数值val。你需要在BST中找到节点值等于val的节点。返回以该节点为根的子树。如果节点不存在,则返回null。示例:......
  • leetcode-二叉树展开为链表
    //leetcodesubmitregionbegin(Prohibitmodificationanddeletion)/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;......
  • BM35 判断是不是完全二叉树
    思路:判断一个二叉树是不是完全二叉树,先弄清楚二叉树的定义,只有最后一层和倒数第一层有叶子结点,也就是说当访问到空节点时,后面不应该再有节点可访问了。即空节点一定是在......
  • 1398:短信计费
    #include<iostream>usingnamespacestd;intmain(){ intn; cin>>n; floata,b=0; for(inti=0;i<n;i++){ cin>>a; if(a<70){ b=b+0.1; }else{ b=b+0.1; ......
  • 信奥赛 1398
    1398:短信计费时间限制:1000ms      内存限制:65536KB提交数:42379   通过数:19966【题目描述】用手机发短信,一条短信资费为0.1元,但限定一条短信......
  • C++ 1398:短信计费
    1398:短信计费【题目描述】用手机发短信,一条短信资费为0.1元,但限定一条短信的内容在70个字以内(包括70个字)。如果你一次所发送的短信超过了70个字,则会按照每70个字一条......
  • 二叉树的遍历
    二叉树的遍历一、二叉树的遍历算法可以将二叉树的遍历分为:先序遍历(根、左、右),中序遍历(左、根、右),后序遍历(左、右、根)先序遍历动画(根、左、右)中序遍历......
  • BM26 求二叉树的层序遍历
    思路:逐层访问,通过访问当前层来得到下一层的节点。结束标志是下一层没有节点。Gopackagemainimport."nc_tools"/**typeTreeNodestruct{*Valint*Left......
  • 小白科普丨何为树、二叉树和森林?
    摘要:本文为大家带来树、二叉树和森林的表示及如何进行相互转换。本文分享自华为云社区《树、二叉树和森林的表示及相互转换》,作者:1+1=王。树的基本概念树的定义:树是n(n......