剑指offer 编程题(59):二叉搜索树的第k个结点
2017-12-31 17:51
591 查看
二叉搜索树的第k个结点
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } }; */ class Solution { public: vector<TreeNode*> res; void inOrder(TreeNode * root) { if (root == NULL) { return; } inOrder(root->left); res.push_back(root); inOrder(root->right); } TreeNode* KthNode(TreeNode* pRoot, int k) { if(!pRoot) return pRoot; inOrder(pRoot); if(res.size() < k || k <= 0) { return NULL; } return res[k - 1]; } };
class Solution { public: int count = 0; TreeNode *res = NULL; void inOrder(TreeNode * root,int k) { if (root == NULL) { return; } inOrder(root->left,k); count++; if(count == k) { res = root; } inOrder(root->right,k); } TreeNode* KthNode(TreeNode* pRoot, int k) { if(!pRoot) return pRoot; inOrder(pRoot,k); return res; } };
相关文章推荐
- 剑指offer 63题 【树】二叉搜索树的第k个结点
- 【剑指Offer】面试题63:二叉搜索树的第k个结点
- 剑指offer面试题目63(二叉搜索树的第k个结点)
- 剑指offer---二叉搜索树的第k个结点
- [剑指offer]二叉搜索树的第k个结点
- 剑指Offer—62—二叉搜索树的第k个结点
- 剑指offer_二叉树---二叉搜索树的第k个结点
- 剑指offer-62.二叉搜索树的第k个结点
- 剑指offer-面试题63-二叉搜索树的第k个结点
- 剑指offer 二叉搜索树的第k个结点
- 剑指offer—二叉搜索树的第K个结点
- 剑指Offer--063-二叉搜索树的第K个结点
- 剑指offer(C++)——二叉搜索树的第k个结点
- 剑指offer-二叉搜索树的第k个结点
- 【剑指offer-解题系列(63)】二叉搜索树的第k个结点
- (C++)剑指offer-62:二叉搜索树的第k个结点(树)(再理解)
- 【剑指Offer学习】【面试题63:二叉搜索树的第k个结点】
- 剑指offer—二叉搜索树的第k个结点
- 剑指offer:二叉搜索树的第k个结点
- 剑指offer-面试题63:二叉搜索树的第K个结点