import java.util.*;
/*
- public class TreeNode {
- int val = 0;
- TreeNode left = null;
- TreeNode right = null;
- public TreeNode(int val) {
-
this.val = val;
- }
- } */
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param proot TreeNode类 * @param k int整型 * @return int整型 */
//装入中序遍历的结果,按索引得到第k个节点的值
static ArrayList<Integer> list = new ArrayList<Integer>();
public int KthNode (TreeNode proot, int k) {
// write code here
if(proot == null || k <= 0){
return -1;
}
inOrder(proot);
return list.size() >= k ? list.get(k - 1) : -1;
}
public static void inOrder(TreeNode root){
if(root == null){
return;
}
inOrder(root.left);
list.add(root.val);
inOrder(root.right);
}
}