230. Kth Smallest Element in a BST
# 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 kthSmallest(self, root: Optional[TreeNode], k: int) -> int:
# 왼->현->오른쪽..으로 리스트업하면. 즉 inorder 순회 전체 나오고 거기에서.. k번째 찾으면 됨
res = []
def dfs(node):
if not node: # 노드 없으면
return # 그냥 끝내고
if node.left:
dfs(node.left)
res.append(node.val)
if node.right:
dfs(node.right)
dfs(root)
return res[k-1] # 0이 1번째 이므로, k번째는 index가 k-1 임'LeetCode > 주제별 보충' 카테고리의 다른 글
| BST: 4. Median of Two Sorted Arrays ★★★★★ (2) | 2024.12.21 |
|---|---|
| Graphs: 130. Surrounded Regions★★ (0) | 2024.12.16 |
| Tree: 124. Binary Tree Maximum Path Sum (0) | 2024.12.14 |
| DFS: 100. Same Tree (0) | 2024.12.11 |
| Graphs(Union Find): 547. Number of Provinces (0) | 2024.11.18 |