日期 | 是否一次通过 | comment |
---|---|---|
2019-01-19 22:38 | 否 | 对preOrder & 分治理解不够深刻 |
(来源:https://leetcode.cn/problems/trim-a-binary-search-tree/)
- 非递归方法:TODO;
- 递归方法:
2.1 递归思想:preOrder,首先判断root是否满足条件,再递归判断左右子树;
2.1 递归
class Solution {
public TreeNode trimBST(TreeNode root, int L, int R) {
if(root == null) {
return root;
}
if(root.val > R) {
return trimBST(root.left, L, R);
}
if(root.val < L) {
return trimBST(root.right, L, R);
}
root.left = trimBST(root.left, L, R);
root.right = trimBST(root.right, L, R);
return root;
}
}