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

This commit is contained in:
huangge1199 2021-08-12 13:14:22 +08:00
parent 3651d52d2e
commit a4331b798a
2 changed files with 120 additions and 0 deletions

View File

@ -0,0 +1,90 @@
//给你一棵所有节点为非负值的二叉搜索树请你计算树中任意两节点的差的绝对值的最小值
//
//
//
// 示例
//
// 输入
//
// 1
// \
// 3
// /
// 2
//
//输出
//1
//
//解释
//最小绝对差为 1其中 2 1 的差的绝对值为 1或者 2 3
//
//
//
//
// 提示
//
//
// 树中至少有 2 个节点
// 本题与 783 https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/
//相同
//
// Related Topics 深度优先搜索 广度优先搜索 二叉搜索树 二叉树
// 👍 264 👎 0
package leetcode.editor.cn;
import com.code.leet.entiy.TreeNode;
import java.util.ArrayList;
import java.util.List;
//530:二叉搜索树的最小绝对差
class MinimumAbsoluteDifferenceInBst {
public static void main(String[] args) {
//测试代码
Solution solution = new MinimumAbsoluteDifferenceInBst().new Solution();
}
//力扣代码
//leetcode submit region begin(Prohibit modification and deletion)
/**
* 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 {
List<Integer> list = new ArrayList<>();
public int getMinimumDifference(TreeNode root) {
dfs(root);
int min = Integer.MAX_VALUE;
for (int i = 1; i < list.size(); i++) {
min = Math.min(Math.abs(list.get(i)- list.get(i-1)),min);
}
return min;
}
private void dfs(TreeNode node){
if(node==null){
return;
}
dfs(node.left);
list.add(node.val);
dfs(node.right);
}
}
//leetcode submit region end(Prohibit modification and deletion)
}

View File

@ -0,0 +1,30 @@
<p>给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。</p>
<p>&nbsp;</p>
<p><strong>示例:</strong></p>
<pre><strong>输入:</strong>
1
\
3
/
2
<strong>输出:</strong>
1
<strong>解释:
</strong>最小绝对差为 1其中 2 和 1 的差的绝对值为 1或者 2 和 3
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li>树中至少有 2 个节点。</li>
<li>本题与 783 <a href="https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/">https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/</a> 相同</li>
</ul>
<div><div>Related Topics</div><div><li></li><li>深度优先搜索</li><li>广度优先搜索</li><li>二叉搜索树</li><li>二叉树</li></div></div>\n<div><li>👍 264</li><li>👎 0</li></div>