class Solution {
public:
void rec(TreeNode* pRoot, vector<TreeNode*> &ret){
if(pRoot!=NULL){
rec(pRoot->left, ret);
ret.push_back(pRoot);
rec(pRoot->right, ret);
}
}
TreeNode* KthNode(TreeNode* pRoot, int k)
{
if(k<1||pRoot==NULL) return NULL;
//将二叉搜索树按照中序遍历(有序序列)存储在vector中
vector<TreeNode*> ret;
rec(pRoot,ret);
//判断&返回
int num=ret.size();
if(num>=k)
return ret[k-1];
else
return NULL;
}
};
京公网安备 11010502036488号