文章目录

  • 1. 题目
  • 2. 解题
    • 2.1 暴力查找
    • 2.2 二分查找

1. 题目

给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的数值。

注意:
给定的目标值 target 是一个浮点数
题目保证在该二叉搜索树中只会存在一个最接近目标值的数

示例:
输入: root = [4,2,5,1,3],目标值 target = 3.7142864/ \2   5/ \
1   3
输出: 4

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/closest-binary-search-tree-value
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

2.1 暴力查找

class Solution {int ans = LONG_MAX;double diff = LONG_MAX;
public:int closestValue(TreeNode* root, double target) {if(!root) return 0;if(fabs(double(root->val)-target) < diff){diff = fabs(double(root->val)-target);ans = root->val;}closestValue(root->left, target);closestValue(root->right, target);return ans;}
};

16 ms 20.9 MB

2.2 二分查找

class Solution {int ans = LONG_MAX;double diff = LONG_MAX;
public:int closestValue(TreeNode* root, double target) {if(!root) return 0;if(fabs(double(root->val)-target) < diff){diff = fabs(double(root->val)-target);ans = root->val;}if(root->val > target)closestValue(root->left, target);elseclosestValue(root->right, target);return ans;}
};

20 ms 20.8 MB


长按或扫码关注我的公众号,一起加油、一起学习进步!

LeetCode 270. 最接近的二叉搜索树值相关推荐

  1. LeetCode 272. 最接近的二叉搜索树值 II(栈+优先队列)

    文章目录 1. 题目 2. 解题 1. 题目 给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的 k 个值. 注意: 给定的目标值 target ...

  2. leetcode270. 最接近的二叉搜索树值

    给定一个不为空的二叉搜索树和一个目标值 target,请在该二叉搜索树中找到最接近目标值 target 的数值. 注意: 给定的目标值 target 是一个浮点数 题目保证在该二叉搜索树中只会存在一个 ...

  3. leetcode算法题--不同的二叉搜索树

    原题链接:https://leetcode-cn.com/problems/unique-binary-search-trees/ 相关题目:leetcode算法题--不同的二叉搜索树 II 1.递归 ...

  4. 刻意练习:LeetCode实战 -- Task23. 不同的二叉搜索树 II

    背景 本篇图文是LSGO软件技术团队组织的 第二期基础算法(Leetcode)刻意练习训练营 的打卡任务.本期训练营采用分类别练习的模式,即选择了五个知识点(数组.链表.字符串.树.贪心算法),每个知 ...

  5. LeetCode 1214. 查找两棵二叉搜索树之和(二叉树迭代器+双指针)

    文章目录 1. 题目 2. 解题 1. 题目 给出两棵二叉搜索树,请你从两棵树中各找出一个节点,使得这两个节点的值之和等于目标值 Target. 如果可以找到返回 True,否则返回 False. 示 ...

  6. LeetCode 109. 有序链表转换二叉搜索树(快慢指针+递归)

    1. 题目 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1. 来源:力扣(LeetC ...

  7. leetcode —— 面试题68 - I. 二叉搜索树的最近公共祖先

    给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:"对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 x 是 p.q 的祖 ...

  8. Leetcode 109.有序链表转换二叉搜索树

    Time: 20190901 Type: Meidum 题目描述 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子 ...

  9. LeetCode刷题笔记 二叉树 二叉搜索树的操作

    669 修剪二叉搜索树 ​ 给定一个二叉查找树和两个整数 L 和 R,且 L < R,试修剪此二叉查找树,使得修剪后所有节点的值都在 [L, R] 的范围内. ​ 输入是一个二叉查找树和两个整数 ...

最新文章

  1. python字符串/元组/列表/字典互转
  2. 《数据分析变革:大数据时代精准决策之道》一第1章 了解运营型分析
  3. 高德地图联手中国气象局,积水地图 AI 版实时预测道路积水
  4. android开机启动shell脚本
  5. win10鼎信诺为什么安装不了_两个方法教你彻底解决win10系统更新补丁安装失败的问题-系统操作与应用 -亦是美网络...
  6. 使用yum下载rpm源码包
  7. 看电脑头痛计算机专业,看电脑头疼怎么回事
  8. linux读取文件内容 cat,Linux 读取文件:cat 命令(拼接文件)
  9. python 在软件自己自动输入器_Python自动操作GUI神器PyAutoGUI
  10. 3G0众测靶场-0407 WriteUp
  11. MFC的使用——在共享DLL中使用MFC、在静态库中使用MFC
  12. 实战篇-通用的页面列表导出Excel控件
  13. JavaScript:base64编码与解码
  14. 网络号 IP地址 子网掩码如何计算
  15. 财阀还是民主?DeFi协议大战,暗潮汹涌
  16. win7 桌面计算机不显示器,Win7电脑显示器模糊怎么办?
  17. 2022最新整理iOS app上架app详细教程
  18. 思科模拟器:cisco路由器密码恢复(密码破解)
  19. iOS导航栏颜色,任务栏颜色
  20. Windows 11 测试版 泄露版,微软下一代操作系统抢先下载

热门文章

  1. Request/Response【学习笔记03】
  2. 在python中模块可以封装_python 制作python包,封装成可用模块教程
  3. java服务器向客户端发消息_java一个简单的客户端向服务端发送消息
  4. 第一季6:海思方案中uboot、kernel和rootfs的烧写方法
  5. misc类设备与蜂鸣器驱动
  6. 关于bc中小数点length,scale,(())以及进制转换
  7. 时间操作(Java版)—获取给定日期N天后的日期
  8. Eclipse 为jar包加入 Java Source和Javadoc(如何向Eclipse中导入源码和doc)
  9. 读书笔记2013第18本:《像外行一样思考,像专家一样实践》
  10. .net 门槛高不高之我见