给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。
public class Main{
public int number = 0;
public TreeNode node = null;
public void preNode(TreeNode pRoot,int k){
if(pRoot!=null){
preNode(pRoot.left,k);
number++;
if(number ==k){
node = pRoot;
}
preNode(pRoot.right,k);
}
}
TreeNode KthNode(TreeNode pRoot, int k)
{
preNode(pRoot,k);
return node;
}
public static void main(String[] args) {
}
}
网友评论