파비의 매일매일 공부기록

2023.02.17 Today's Challenge 본문

Problem Solving/LeetCode

2023.02.17 Today's Challenge

fabichoi 2023. 2. 17. 23:45

https://leetcode.com/problems/minimum-distance-between-bst-nodes/

 

Minimum Distance Between BST Nodes - LeetCode

Minimum Distance Between BST Nodes - Given the root of a Binary Search Tree (BST), return the minimum difference between the values of any two different nodes in the tree.   Example 1: [https://assets.leetcode.com/uploads/2021/02/05/bst1.jpg] Input: root

leetcode.com

최소값을 클래스 변수로 놓고 트리 순회하면서 구하면 됨

Class Solution:
    def __init__(self):
        self.prev = None
        self.min = float('inf')

    def minDiffInBST(self, root: Optional[TreeNode]) -> int:
        self.inOrder(root)
        return self.min

    def inOrder(self, root: TreeNode) -> None:
        if not root:
            return
        self.inOrder(root.left)

        if self.prev:
            self.min = min(self.min, root.val - self.prev.val)
        self.prev = root
        self.inOrder(root.right)
반응형

'Problem Solving > LeetCode' 카테고리의 다른 글

2023.02.19 Today's Challenge  (0) 2023.02.19
2023.02.18 Today's Challenge  (0) 2023.02.18
2023.02.16 Today's Challenge  (1) 2023.02.16
2023.02.15 Today's Challenge  (0) 2023.02.15
2023.02.14 Today's Challenge  (0) 2023.02.14
Comments