669. Trim a Binary Search Tree
程序员文章站
2022-06-03 14:06:46
...
Given a binary search tree and the lowest and highest boundaries as L and R, trim the tree so that all its elements lies in [L, R] (R >= L). You might need to change the root of the tree, so the result should return the new root of the trimmed binary search tree.
Example 1:
Example 2:
题解:
package com.leetcode;
public class Solution {
public static void main(String[] args) {
// TODO Auto-generated method stub
TreeNode root = new TreeNode(3);
root.lchild = new TreeNode(0);
root.rchild = new TreeNode(4);
root.lchild.rchild = new TreeNode(2);
root.lchild.rchild.lchild = new TreeNode(1);
int L = 1;
int R = 3;
root = trimBST(root, L, R);
inorderTraversal(root);
System.out.println();
}
public static TreeNode trimBST(TreeNode root, int L, int R) {
if (root == null)
return null;
if (root.value < L)
return trimBST(root.rchild, L, R);
else if (root.value > R)
return trimBST(root.lchild, L, R);
else {
root.lchild = trimBST(root.lchild, L, R);
root.rchild = trimBST(root.rchild, L, R);
return root;
}
}
public static void inorderTraversal(TreeNode root) {
if (root == null)
return;
inorderTraversal(root.lchild);
System.out.print(root.value + " ");
inorderTraversal(root.rchild);
}
}
class TreeNode {
public TreeNode(int value) {
this.value = value;
lchild = null;
rchild = null;
}
public int value;
public TreeNode lchild;
public TreeNode rchild;
}
上一篇: 详解Webpack DLL用法以及功能
推荐阅读
-
Convert Sorted Array to Binary Search Tree
-
【leetcode】-700. Search in a Binary Search Tree 查找二叉搜索树
-
Leetcode——108. Convert Sorted Array to Binary Search Tree
-
Leetcode 108. Convert Sorted Array to Binary Search Tree
-
LeetCode 235--二叉搜索树的最近公共祖先 ( Lowest Common Ancestor of a Binary Search Tree ) ( C语言版 )
-
LeetCode 235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树
-
235. Lowest Common Ancestor of a Binary Search Tree
-
235. Lowest Common Ancestor of a Binary Search Tree
-
[Leetcode] 235. Lowest Common Ancestor of a Binary Search Tree
-
leetcode 235. Lowest Common Ancestor of a Binary Search Tree(二叉树的最低共同祖先)