LeetCode230. 二叉搜索树中第K小的元素

题目:

给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 个最小的元素。

题解:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def kthSmallest(self, root: TreeNode, k: int) -> int:
        """
        :type root: TreeNode
        :type k: int
        :rtype: int
        """
        
        def inorderTraversal(node):
            if not node:
                return []
            return inorderTraversal(node.left) + [node.val] + inorderTraversal(node.right)
        
        l = inorderTraversal(root)
        return l[k - 1]

 

你可能感兴趣的:(LeetCode)