230 Kth Smallest Element in a BST
Given a binary search tree, write a functionkthSmallest
to find thekth smallest element in it.
Note: You may assume k is always valid, 1 ? k ? BST's total elements.
Follow up: What if the BST is modified (insert/delete operations) often and you need to find the kth smallest frequently? How would you optimize the kthSmallest routine?
The Idea: Just do inorder traversal until the kth element is reached. Admitted, this is terrible python code (with the use of references), but it surprising scored in the top percentile range.
Complexity: O(N) time O(N) space
Last updated