LeetCode 653. 两数之和 IV - 输入 BST(二叉搜索树迭代器双指针)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true。

案例 1:
输入: 5/ \3   6/ \   \
2   4   7Target = 9
输出: True案例 2:
输入: 5/ \3   6/ \   \
2   4   7Target = 28
输出: False

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/two-sum-iv-input-is-a-bst
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 创建二叉搜索树的正向和反向迭代器(中序是排好序的),一个从前面开始,一个从后面开始
  • 双指针逼近给定的数即可

相关参考:LeetCode 173. 二叉搜索树迭代器(中序遍历)

class Solution {TreeNode *begin, *end, *temp;stack<TreeNode*> s1, s2;
public:bool findTarget(TreeNode* root, int k) {if(root == NULL)return false;begin = end = root;TreeNode *i = next(), *j = prev();while(i != j){if(i->val+j->val > k)j = prev();//和大了,j减小else if(i->val+j->val < k)i = next();//和小了,i增大else//if(i->val+j->val == k)return true;}return false;}TreeNode* next()//正向迭代器,从最小的开始{while(begin){s1.push(begin);begin = begin->left;}temp = s1.top();s1.pop();begin = temp->right;return temp;}TreeNode* prev()//反向迭代器,从最大的开始{while(end){s2.push(end);end = end->right;}temp = s2.top();s2.pop();end = temp->left;return temp;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478152.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

盘点来自工业界的GPU共享方案

文 | 阎姝含源 | 极市平台进年来工业界一直孜孜不倦地寻求提升GPU利用率的方案&#xff0c;能被更多用户理解和使用的GPU共享走进工程师的视野中。本文将总结目前有公开PR的、来自工业界的部分GPU容器计算共享方案&#xff0c;看看工业界对GPU共享的定位和需求。本文将依旧着眼…

百面机器学习|第二章模型评估知识点 蓝白绛

前言 如果你能找到这里&#xff0c;真是我的幸运~这里是蓝白绛的学习笔记&#xff0c;本集合主要针对《百面机器学习——算法工程师带你去面试》这本书。主要记录我认为重要的知识点&#xff0c;希望对大家有帮助。 第二章 模型评估 1、评估指标的局限性 准确率(Accuracy)&…

美团外卖订单中心的演进

美团外卖从2013年9月成交第一单以来&#xff0c;已走过了三个年头。期间&#xff0c;业务飞速发展&#xff0c;美团外卖由日均几单发展为日均500万单&#xff08;9月11日已突破600万&#xff09;的大型O2O互联网外卖服务平台。平台支持的品类也由最初外卖单品拓展为全品类。 随…

论文浅尝 | 基于知识图谱的智能调研方法(DI佳作)

转载公众号 | 数据智能英文刊题目&#xff1a;A Knowledge Graph Based Approach to Social Science Surveys引用&#xff1a;Z. Pan, Z.J., et al.: A Knowledge Graph Based Approach to Social Science Surveys. Data Intelligence 3(3). doi: 10.1162/dint_a_00107文章摘要…

NYU Google: 知识蒸馏无处不在,但它真的有用吗?

文 | 小伟编 | 小轶导师: 小伟&#xff0c;听说你对知识蒸馏比较了解&#xff0c;你来给我说说知识蒸馏有什么用&#xff1f;我: 知识蒸馏是一种很典型的模型压缩的方法&#xff0c;我们可以用它来有效地从大型教师模型学习小型学生模型&#xff0c;并且学生模型的性能也很不错…

pyscript+py-env实现python+html效果

参考链接&#xff1a;https://developer.aliyun.com/article/976083?spma2c6h.12873581.group.dArticle976083.3a8057c73DINVs 今天我们要介绍的东西&#xff0c;叫做PyScript&#xff0c;使用它&#xff0c;不需要安装任何软件。只要有一个记事本&#xff0c;就能写一段HTMLP…

美团的DBProxy实践

本文整理自美团技术沙龙第10期&#xff1a;数据库技术架构与实践。 美团技术沙龙由美团技术团队主办&#xff0c;每月一期&#xff0c;每期沙龙邀请美团及其它互联网公司的技术专家分享来自一线的实践经验&#xff0c;覆盖各主要技术领域。 本次沙龙主要围绕数据库相关的主题&a…

LeetCode 606. 根据二叉树创建字符串(递归)

文章目录1. 题目2. 递归解题1. 题目 你需要采用前序遍历的方式&#xff0c;将一个二叉树转换成一个由括号和整数组成的字符串。 空节点则用一对空括号 “()” 表示。而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。 示例 1: 输入: 二叉树: [1,…

论文浅尝 | 面向开放域的无监督实体对齐

笔记整理 | 谭亦鸣&#xff0c;东南大学博士生来源&#xff1a;DASFAA’21链接&#xff1a;https://arxiv.org/pdf/2101.10535.pdf概述与动机知识图谱对齐的目的是建立两个不同知识图谱之间实体的对应关系&#xff0c;如图1&#xff0c;本文作者发现现有的实体对齐方法依赖于标…

聊聊推荐系统

这两天&#xff0c;有种把某宝卸载的冲动&#xff0c;它的“猜你喜欢”推荐简直是我肚子里的蛔虫&#xff0c;每次看都忍不住剁手&#xff0c;钱包就这么日渐消瘦……但从技术的角度想想&#xff0c;不得不说阿里的推荐系统的确做得不错。其实&#xff0c;除了电商平台&#xf…

LeetCode 695. 岛屿的最大面积(图的BFS/DFS)

文章目录1. 题目2. 解题2.1 BFS广度优先搜索2.2 DFS深度优先搜索1. 题目 给定一个包含了一些 0 和 1的非空二维数组 grid , 一个 岛屿 是由四个方向 (水平或垂直) 的 1 (代表土地) 构成的组合。你可以假设二维矩阵的四个边缘都被水包围着。 找到给定的二维数组中最大的岛屿面…

Neo4j:入门基础(一)之安装与使用

原文链接&#xff1a;https://blog.csdn.net/sinat_36226553/article/details/108541370 # 图数据库 链接&#xff1a;什么是原生(Native)图数据库 一般认为具有“无索引邻接”特性的图数据库才称为原生图数据库 链接&#xff1a;常用的图数据库 图存储可以分为属性图、三元组…

论文浅尝 | 问题多样性对于问答的帮助

笔记整理 | 毕胜 东南大学在读博士&#xff0c;研究方向&#xff1a;自然语言处理 知识图谱问题生成通过生成一些合成的问题作为训练语料有效提高了问答系统的效果&#xff0c;本文的研究点是&#xff1a;在QG中&#xff0c;生成问题的文本多样性是否对下游的QA有帮助&#xf…

RDS平台介绍

本文整理自美团点评技术沙龙第10期&#xff1a;数据库技术架构与实践。 美团点评技术沙龙由美团点评技术团队主办&#xff0c;每期沙龙邀请美团点评及其它互联网公司的技术专家分享来自一线的实践经验&#xff0c;覆盖各主要技术领域。 本次沙龙主要围绕数据库相关的主题&#…

你已经是一个成熟的地图了,该学会帮我...

文 | 小戏当我们打开百度地图&#xff0c;选定到达目的地&#xff0c;导航软件里的小姐姐马上就用不紧不慢的语调告诉我们“准备出发&#xff0c;全程12公里&#xff0c;预计需要30分钟……”但一看手表上显示的不风驰电掣铁定迟到的时间&#xff0c;肯定不允许我们和导航软件里…

LeetCode 427. 建立四叉树(递归)

1. 题目 我们想要使用一棵四叉树来储存一个 N x N 的布尔值网络。网络中每一格的值只会是真或假。树的根结点代表整个网络。对于每个结点, 它将被分等成四个孩子结点直到这个区域内的值都是相同的. 每个结点还有另外两个布尔变量: isLeaf 和 val。isLeaf 当这个节点是一个叶子…

基于 KIF 的 iOS UI 自动化测试和持续集成

客户端 UI 自动化测试是大多数测试团队的研究重点&#xff0c;本文介绍猫眼测试团队在猫眼 iOS 客户端实践的基于 KIF 的 UI 自动化测试和持续集成过程。 一、测试框架的选择 iOS UI 自动化测试框架有不少&#xff0c;其中 UI Automation 是 Apple 早期提供的 UI 自动化测试解决…

论文浅尝 | 利用冻结语言模型的多模态少样本学习

笔记整理 | 李磊&#xff0c;浙江大学硕士&#xff0c;研究方向为自然语言处理链接&#xff1a;https://arxiv.org/abs/2106.13884动机大规模的自回归语言模型&#xff08;如GPT&#xff09;在预训练阶段学习到了大量的知识&#xff0c;具有很好的学习新任务的能力&#xff0c…

ACL’21 | 对话系统也要进军多模态了!

文 | 胡煌&#xff0c;梁祖杰编 | 小轶对于一个对话Bot来讲&#xff0c;拥有对视觉信息的感知和联想能力是非常重要的。比如&#xff0c;我们人类在对话中谈到大海的时候&#xff0c;就会自然地联想到蓝天、白云和飞翔的海鸟。然而&#xff0c;当前的对话模型&#xff0c;如 Me…

x86系统与arm64系统不兼容的linux服务器问题

一键离线安装命令&#xff1a; pip install --no-index --find-links/home/digital_package -r requirements.txt --ignore-installed 1 cython 2 gensim&#xff1a;