Given A binary search tree, write a function to kthSmallest
find the kth smallest element in it.
Note:
You may assume k are always valid, 1≤k≤bst's total elements.
Problem: Find the element K small for the two-fork search tree.
A deep traversal of the application. Deep traversal can be achieved using recursion, or with the help of stacks. This article uses recursion to implement the code.
1 voidVisit (treenode*node) {2 3 if(Node->left! =NULL) {4Visit (node->Left );5 }6 7 if(CNT = =0) {8 return;9 }Ten Onecnt--; A if(CNT = =0){ -res = node->Val; - return ; the } - - if(Node->right! =NULL) { -Visit (node->Right ); + } - } + A intCNT; at intRes; - - intKthsmallest (treenode* root,intk) { -CNT =K; - if(Root = =NULL) { - return 0; in } - visit (root); to + return(CNT = =0) ? Res:0; -}
[Leetcode] 230. Kth smallest Element in a BST problem solving thinking