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
相关推荐
德福危险4 分钟前
C语言数据类型与变量 系统总结笔记
c语言·笔记·算法
@淡 定5 分钟前
JVM调优参数配置详解
java·jvm·算法
Lenyiin12 分钟前
第 97 场周赛:公平的糖果交换、查找和替换模式、根据前序和后序遍历构造二叉树、子序列宽度之和
java·c++·python·leetcode·周赛·lenyiin
CoovallyAIHub13 分钟前
从电影特效到体育科学,运动追踪只能靠“人眼”吗?
深度学习·算法·计算机视觉
风筝在晴天搁浅13 分钟前
hot100 48.旋转图像
算法
rannn_11118 分钟前
【SQL题解】力扣高频 SQL 50题|DAY2+3
数据库·后端·sql·leetcode
TechNomad30 分钟前
排序算法:希尔排序算法
数据结构·算法·排序算法
热爱生活的猴子31 分钟前
算法中DFS & BFS 核心学习笔记
算法·深度优先·宽度优先
im_AMBER31 分钟前
Leetcode 83 使数组平衡的最少移除数目中等相关标签 | 尽可能使字符串相等
数据结构·c++·笔记·学习·算法·leetcode
XFF不秃头32 分钟前
力扣刷题笔记-组合总和
c++·笔记·leetcode