news 2026/6/10 16:06:24

day57(1.8)——leetcode面试经典150

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
day57(1.8)——leetcode面试经典150

530. 二叉搜索树的最小绝对差

530. 二叉搜索树的最小绝对值

题目:

题解:

一开始用的笨办法:

/** * 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 int getMinimumDifference(TreeNode root) { Queue<TreeNode> queue = new LinkedList<>(); queue.offer(root); List<Integer> list = new ArrayList<>(); while(queue.size()>0) { int size = queue.size(); for(int i=0;i<size;i++) { TreeNode node = queue.poll(); list.add(node.val); if(node.left != null) { queue.offer(node.left); } if(node.right != null) { queue.offer(node.right); } } } list.sort(null); int minn = Integer.MAX_VALUE; for(int i=1;i<list.size();i++) { minn = Math.min(minn, list.get(i)-list.get(i-1)); } return minn; } }

妙哉,用中序遍历

/** * 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 int minn = Integer.MAX_VALUE; public int pre = Integer.MIN_VALUE/2; public int getMinimumDifference(TreeNode root) { dfs(root); return minn; } public void dfs(TreeNode root) { if(root == null) { return ; } dfs(root.left); minn = Math.min(minn, root.val-pre); pre = root.val; dfs(root.right); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 13:39:38

多线程使用场景指南

多线程使用场景指南 概述 多线程是现代软件开发中的重要技术&#xff0c;它允许程序同时执行多个任务&#xff0c;提高系统资源利用率和应用程序响应性。本文档将详细介绍多线程在实际开发中的主要使用场景&#xff0c;帮助开发者理解何时以及如何使用多线程技术。 1. 计算密集…

作者头像 李华
网站建设 2026/6/10 13:40:05

零成本体验Z-Image-Turbo:利用免费云端资源的聪明方法

零成本体验Z-Image-Turbo&#xff1a;利用免费云端资源的聪明方法 如果你是一名对AI绘画感兴趣的学生&#xff0c;但苦于预算有限无法购买高性能显卡&#xff0c;那么Z-Image-Turbo可能是你入门AI绘画的理想选择。本文将详细介绍如何利用免费云端资源部署和体验Z-Image-Turbo模…

作者头像 李华
网站建设 2026/6/10 13:40:09

一文搞懂大模型的RAG(知识库和知识图谱)

RAG&#xff08;Retrieval-Augmented Generation&#xff0c;检索增强生成&#xff09;是一种将检索与生成协同结合的技术。当大模型&#xff08;如DeepSeek、Qwen、GPT&#xff09;需要生成文本时&#xff0c;会先从外部知识库中检索相关信息&#xff0c;再基于检索到的内容生…

作者头像 李华
网站建设 2026/6/10 13:30:08

Java高性能开发实战(1)——Redis 7 持久化机制

Java高性能开发实战&#xff08;1&#xff09;——Redis 7 持久化机制 Redis 作为高性能内存数据库&#xff0c;在生产环境中持久化机制是保障数据可靠性的核心。Redis 7&#xff08;截至2026年初最新稳定版基于7.x系列&#xff09;继承并优化了持久化功能&#xff0c;主要包括…

作者头像 李华
网站建设 2026/6/10 10:30:53

零基础入门:如何用阿里云GPU实例10分钟搭建Z-Image-Turbo开发环境

零基础入门&#xff1a;如何用阿里云GPU实例10分钟搭建Z-Image-Turbo开发环境 作为一名刚接触AI的大学生&#xff0c;你可能已经被Z-Image-Turbo的快速图像生成能力所吸引。这个由阿里开源的6B参数模型&#xff0c;通过创新的8步蒸馏技术&#xff0c;能在保持照片级质量的同时&…

作者头像 李华