job 인터뷰/코테(Matroid) 준비
BST: 700. Search in a Binary Search Tree
hyunkookim
2024. 11. 17. 18:09
700. Search in a Binary Search Tree
# 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]:
# node.val == val 인 node return
cur = root
while cur:
if cur.val == val:
return cur
elif cur.val < val: # 현재 값 < 검색값 이면, 오른쪽으로
cur = cur.right
else: # 현재 값 > 검색값 이면 => 검색값 < 현재값 이면, 왼쪽으로
cur = cur.left
# 루프 돌아도 없으면, 존재 안하므로.
return None # 명시적으로 적는 것이 더 나음, 안적어도, 기본으로 return None 함. c++에서 return 0 하듯이.