二叉搜索树的第K个结点

来源:互联网 发布:市场上主流单片机 编辑:程序博客网 时间:2024/06/13 11:43


Description:给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。


/*public class TreeNode {    int val = 0;    TreeNode left = null;    TreeNode right = null;    public TreeNode(int val) {        this.val = val;    }}*/public class Solution {    int count = 0;    TreeNode node = null;    TreeNode KthNode(TreeNode root, int k)    {        backtrack(root, k);        return node;    }    public void backtrack(TreeNode root, int k) {        if (root != null) {            KthNode(root.left, k);            count++;            if (count == k) {                node =root;                return ;            }            KthNode(root.right, k);        }    }}


原创粉丝点击