day59(1.11)——leetcode面试经典150

98. 验证二叉搜索树

今天这道题思路挺简单,但是我根本没有想到,通过ai的提示才写出来,就是直接不断改变当前值的范围。

昨天没有写题,背习概去了,真的差点把我背死了,能不能别让理科生背书啊啊啊啊,真的要花好久好久的时间才能背下来啊啊啊啊啊,我真的要被折磨疯了,当时有人说好几题不考,结果考了,生气,但是还是很感谢别人告诉我删减哪些题,因为我真的背不下所有题

98.验证二叉搜索树

题目:

题解:

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public boolean dfs(TreeNode node,long min, long max) {
        if(node == null) {
            return true;
        }
        if(node.val <= min || node.val >= max) {
            return false;
        }
        if(dfs(node.left, min, node.val) == false || dfs(node.right, node.val, max) == false) {
            return false;
        }
        return true;
    }

    public boolean isValidBST(TreeNode root) {
        return dfs(root, Long.MIN_VALUE, Long.MAX_VALUE);
    }
}
相关推荐
aqiu11111137 分钟前
【C++算法打怪专栏】8. 字符串转换整数 (atoi)
开发语言·c++·算法
夏幻灵7 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
信奥卷王9 小时前
[GESP202609 六级] 分树规划
算法
夏幻灵9 小时前
LeetCode 21:合并两个有序链表——双指针与哑节点详解
算法·leetcode·链表
徐小黑ACG11 小时前
Golang 基础05 结构体struct
开发语言·算法·golang
Navigator_Z11 小时前
LeetCode //C - 1286. Iterator for Combination
c语言·算法·leetcode
北极有牛12 小时前
cpp学习笔记--常量指针
java·开发语言·算法
GPU实战笔记12 小时前
云端 GPU 训练的账户余额提醒:它能说明什么,不能说明什么?
深度学习·算法·成本管理·gpu云计算·云端训练
浮链序12 小时前
怎么证明"你这个模型是偷我的"——把蒸馏变成取证工具
算法·安全·llm