给定一棵二叉搜索树,请找出其中第k大的节点。
void recursion(TreeNode *root, int &cur, int k, int &v) {
if(nullptr == root)
return;
recursion(root->right, cur, k, v);
if(cur++ == k) {
v = root->val;
return;
}
recursion(root->left, cur, k, v);
}
int kthLargest(TreeNode* root, int k) {
int cur = 1, val;
recursion(root, cur, k, val);
return val;
}