码迷,mamicode.com
首页 > 其他好文 > 详细

230. Kth Smallest Element in a BST

时间:2017-12-20 03:51:14      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:class   fun   color   增加   body   sea   public   binary   turn   

Given a binary search tree, write a function kthSmallest to find the kth smallest element in it.

找二叉搜索树中第k个小的值。

用中序遍历,增加一个全局变量记录访问到第几个节点,返回访问的第k个节点的值。

 1 class Solution {
 2 private:
 3     int cnt;
 4     int ans;
 5 public:
 6     int ldr(TreeNode* root, int k) {
 7         if (root) {
 8             ans = ldr(root->left, k);
 9             if (k==cnt)
10                 return ans;
11             ans = root->val;
12             ++cnt;
13             if (k==cnt)
14                 return ans;
15             ans = ldr(root->right, k);
16             if (k==cnt)
17                 return ans;
18         }  
19         return 0;
20     }
21     int kthSmallest(TreeNode* root, int k) {
22         cnt = 0;
23         ans = 0;
24         ldr(root, k);
25         return ans;
26     }

 

230. Kth Smallest Element in a BST

标签:class   fun   color   增加   body   sea   public   binary   turn   

原文地址:http://www.cnblogs.com/Zzz-y/p/8067812.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!