티스토리 뷰
기술(Tech, IT)/리트코드(LeetCode)
[LeetCode] 270. Closest Binary Search Tree Value
Daniel803 2023. 2. 17. 16:43Binary Search Tree의 root node와 Target value가 주어지고, Tree의 모든 node를 탐색해 Target value의 가장 근사한 value를 가진 node를 return하면 된다. DFS를 통해 left child와 right child가 존재하면 계속 탐색해 나가는 방식으로 구현했다.
class Solution:
def closestValue(self, root: Optional[TreeNode], target: float) -> int:
def dfs(node, target):
l = r = math.inf
if node.left != None:
l = abs(node.left.val - target)
if node.right != None:
r = abs(node.right.val - target)
if self.diff > l:
self.diff = l
self.ret = node.left.val
if self.diff > r:
self.diff = r
self.ret = node.right.val
if node.left != None:
dfs(node.left, target)
if node.right != None:
dfs(node.right, target)
self.ret = root.val
self.diff = abs(root.val - target)
dfs(root, target)
return self.ret
반응형
'기술(Tech, IT) > 리트코드(LeetCode)' 카테고리의 다른 글
[LeetCode] 277. Find the Celebrity (2) | 2023.02.21 |
---|---|
[LeetCode] 272. Closest Binary Search Tree Value II (0) | 2023.02.18 |
[LeetCode] 261. Graph Valid Tree (0) | 2023.02.15 |
[LeetCode] 267. Palindrome Permutation II (0) | 2023.02.14 |
[LeetCode] 266. Palindrome Permutation (0) | 2023.02.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Android
- 딕셔너리
- I2C
- leetcode
- 파이썬
- vertex shader
- C++
- 이코노미스트
- defaultdict
- The Economist
- tf-idf
- 소켓 프로그래밍
- 리트코드
- The Economist Espresso
- java
- 오블완
- join
- 티스토리챌린지
- Hash Map
- min heap
- 안드로이드
- DICTIONARY
- ml
- 투 포인터
- 머신 러닝
- 이코노미스트 에스프레소
- socket programming
- Python
- Computer Graphics
- machine learning
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함
반응형