Skip to content

Commit f8c5ff2

Browse files
committed
Implement recursive DFS solution for LC 669 Trim a BST
1 parent 4b8e162 commit f8c5ff2

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

669. Trim a Binary Search Tree.js

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,17 @@ Constraints:
3838
* @param {number} high
3939
* @return {TreeNode}
4040
*/
41-
const trimBST = (root, low, high) => {};
41+
const trimBST = (root, low, high) => {
42+
const dfs = (node) => {
43+
if (!node) return null;
44+
45+
if (node.val < low) return dfs(node.right);
46+
if (node.val > high) return dfs(node.left);
47+
48+
node.left = dfs(node.left);
49+
node.right = dfs(node.right);
50+
return node;
51+
};
52+
53+
return dfs(root);
54+
};

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ LeetCode Profile: https://leetcode.com/timothyshores/
4242
|[509. Fibonacci Number](https://leetcode.com/problems/fibonacci-number/)|Easy|[JavaScript](509.%20Fibonacci%20Number.js)
4343
|[589. N-ary Tree Preorder Traversal](https://leetcode.com/problems/n-ary-tree-preorder-traversal/)|Easy|[JavaScript](589.%20N-ary%20Tree%20Preorder%20Traversal.js)
4444
|[653. Two Sum IV - Input is a BST](https://leetcode.com/problems/two-sum-iv-input-is-a-bst/)|Easy|[JavaScript](653.%20Two%20Sum%20IV%20-%20Input%20is%20a%20BST.js)
45+
|[669. Trim a Binary Search Tree](https://leetcode.com/problems/trim-a-binary-search-tree/)|Medium|[JavaScript](669.%20Trim%20a%20Binary%20Search%20Tree.js)
4546
|[701. Insert into a Binary Search Tree](https://leetcode.com/problems/insert-into-a-binary-search-tree/)|Medium|[JavaScript](701.%20Insert%20into%20a%20Binary%20Search%20Tree.js)
4647
|[739. Daily Temperatures](https://leetcode.com/problems/daily-temperatures/)|Medium|[JavaScript](739.%20Daily%20Temperatures.js)
4748
|[771. Jewels And Stones](https://leetcode.com/problems/jewels-and-stones/)|Easy|[JavaScript](771.%20Jewels%20And%20Stones.js)

0 commit comments

Comments
 (0)