技术栈

Java | Leetcode Java题解之第173题二叉搜索树迭代器

m0_571957582024-06-22 11:29

题目:

题解:

java 复制代码
class BSTIterator {
    private TreeNode cur;
    private Deque<TreeNode> stack;

    public BSTIterator(TreeNode root) {
        cur = root;
        stack = new LinkedList<TreeNode>();
    }
    
    public int next() {
        while (cur != null) {
            stack.push(cur);
            cur = cur.left;
        }
        cur = stack.pop();
        int ret = cur.val;
        cur = cur.right;
        return ret;
    }
    
    public boolean hasNext() {
        return cur != null || !stack.isEmpty();
    }
}
上一篇:区块链会议投稿资讯CCF C--ICPADS 2024 截止7.7 附录用率(高录用率)
下一篇:每月 GitHub 探索|10 款引领科技趋势的开源项目
相关推荐
camellias_
3 小时前
【无标题】
java·tomcat
咸鱼2.0
3 小时前
【java入门到放弃】需要背诵
java·开发语言
椰猫子
3 小时前
Java:异常(exception)
java·开发语言
6Hzlia
4 小时前
【Hot 100 刷题计划】 LeetCode 48. 旋转图像 | C++ 矩阵变换题解
c++·leetcode·矩阵
win x
4 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
星晨雪海
4 小时前
基于 @Resource 的支付 Service 多实现类完整示例
java·开发语言
阿维的博客日记
4 小时前
什么是逃逸分析
java·juc
Ricky_Theseus
5 小时前
C++右值引用
java·开发语言·c++
Rick1993
5 小时前
Java内存参数解析
java·开发语言·jvm
我是大猴子
5 小时前
Spring代理类为何依赖注入失效?
java·后端·spring
热门推荐
01GitHub 镜像站点02一周AI热点速览(2026.03.31-04.06):GPT-6曝光、谷歌开源Gemma 4、资本狂飙与模型军备竞赛03基于 Docker 部署 Hermes Agent 并接入飞书机器人的完整指南04OpenClaw 请求超时 llm request timed out 怎么解决?3 种方案实测,附完整排查流程05VMware Workstation Pro 17 虚拟机完整安装教程(2026最新)06CodeBuddy与WorkBuddy深度对比:腾讯两款AI工具差异及实操指南07Oh My Codex 快速使用指南08开发者环境配置:用 Ollama 实现本地大模型部署(附下载慢的解决方案09实测!Gemma 4 成功跑在安卓手机上:离线 AI 助手终于来了10UV安装并设置国内源