https://leetcode.com/problems/kth-smallest-element-in-a-bst/
这道题让我们找到第k个最小的数,在BST中。
其实就是BST可以按从小到大顺序遍历的嘛,最最最左侧的肯定是最小的,然后是自己,然后是右侧。
所以有一个count计数就好了。
class Solution {
int fuck = 0;
int val = 0;
public int kthSmallest(TreeNode root, int k) {
put(root, k);
return val;
}
public void put(TreeNode node, int k) {
if (node.left != null) {
put(node.left, k);
}
fuck++;
if (fuck == k) { // once fuck equals k, record the node value, and return.
val = node.val;
return;
}
if (node.right != null) {
put(node.right, k);
}
}
}