leetcode hot100 二叉搜索树

二叉搜索树的第k小的数

python 复制代码
class Solution:
    def kthSmallest(self, root: Optional[TreeNode], k: int) -> int:
        # 二叉搜索树的中序遍历是 升序排列的, 求第k小的,即第k个数
        self.res = []
        def fun(root):
            if not root:
                return
            
            fun(root.left)
            if root:
                self.res.append(root.val)
            fun(root.right)
            return 
        fun(root)
        return self.res[k-1]

验证二叉搜索树

python 复制代码
class Solution:
    def isValidBST(self, root: Optional[TreeNode]) -> bool:
        self.res = []
        self.flag = True
        def func(root):
            if not root:
                return
            func(root.left)
            if root:
                self.res.append(root.val)
                if len(self.res)>1 and self.res[-1] <= self.res[-2]:
                    self.flag = False
                    return 
            func(root.right)

            return 

        func(root)
        return self.flag
相关推荐
多米Domi01119 分钟前
0x3f 第49天 面向实习的八股背诵第六天 过了一遍JVM的知识点,看了相关视频讲解JVM内存,垃圾清理,买了plus,稍微看了点确定一下方向
jvm·数据结构·python·算法·leetcode
A_nanda9 小时前
c# MOdbus rto读写串口,如何不相互影响
算法·c#·多线程
代码雕刻家11 小时前
2.4.蓝桥杯-分巧克力
算法·蓝桥杯
Ulyanov11 小时前
顶层设计——单脉冲雷达仿真器的灵魂蓝图
python·算法·pyside·仿真系统·单脉冲
智者知已应修善业12 小时前
【查找字符最大下标以*符号分割以**结束】2024-12-24
c语言·c++·经验分享·笔记·算法
91刘仁德13 小时前
c++类和对象(下)
c语言·jvm·c++·经验分享·笔记·算法
diediedei13 小时前
模板编译期类型检查
开发语言·c++·算法
阿杰学AI13 小时前
AI核心知识78——大语言模型之CLM(简洁且通俗易懂版)
人工智能·算法·ai·语言模型·rag·clm·语境化语言模型
mmz120713 小时前
分治算法(c++)
c++·算法
睡一觉就好了。14 小时前
快速排序——霍尔排序,前后指针排序,非递归排序
数据结构·算法·排序算法