feat(0783_search-in-a-binary-search-tree): add python3 soln

This commit is contained in:
Sangeeth Sudheer 2022-04-05 21:47:41 +05:30
parent f28be89eb3
commit 27ed30d2a9
2 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,26 @@
You are given the `root` of a binary search tree (BST) and an integer `val`.
Find the node in the BST that the node's value equals `val` and return the subtree rooted with that node. If such a node does not exist, return `null`.
**Example 1:**
![](https://assets.leetcode.com/uploads/2021/01/12/tree1.jpg)
Input: root = [4,2,7,1,3], val = 2
Output: [2,1,3]
**Example 2:**
![](https://assets.leetcode.com/uploads/2021/01/12/tree2.jpg)
Input: root = [4,2,7,1,3], val = 5
Output: []
**Constraints:**
* The number of nodes in the tree is in the range `[1, 5000]`.
* `1 <= Node.val <= 107`
* `root` is a binary search tree.
* `1 <= val <= 107`

View File

@ -0,0 +1,19 @@
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def searchBST(self, root: Optional[TreeNode], val: int) -> Optional[TreeNode]:
current = root
while current is not None:
if val == current.val:
return current
elif val < current.val:
current = current.left
else:
current = current.right
return None