二叉搜索树的第K个节点
2016-12-25 21:02
459 查看
package 二叉搜索树的第K个节点; import java.util.ArrayDeque; import java.util.Stack; /** * Created by h on 16-12-25. */ class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } public class Solution { TreeNode KthNode(TreeNode pRoot, int k) { if (pRoot == null) { return null; } Stack<TreeNode> s = new Stack<>(); inOrder(pRoot, s); while (--k != 0) { if (!s.isEmpty()) { s.pop(); } else { return null; } } if (s.isEmpty()) return null; else return s.peek(); } private void inOrder(TreeNode pRoot, Stack<TreeNode> ad) { if (pRoot == null) { return; } inOrder(pRoot.right, ad); ad.push(pRoot); inOrder(pRoot.left, ad); } public static void main(String[] args) { //new Solution().KthNode() } }
相关文章推荐
- 二叉搜索树的第k个节点
- 二叉搜索树的第K个节点
- 剑指offer_二叉搜索树的第k个节点
- 二叉搜索树的第k个节点
- 【剑指offer】题63:二叉搜索树的第k个节点
- 剑指Offer--二叉搜索树的第K个节点-不会
- 二叉搜索树的第K个节点:递归中用参数返回值。
- 二叉搜索树的第K个节点
- 面试题63:二叉搜索树的第K个节点
- 从二叉搜索树的第k个节点问题看递归如何返回普通变量和对象
- 剑指offer----二叉搜索树的第K个节点----java实现
- 求二叉搜索树中第k个节点
- 二叉搜索树的第k个节点
- 剑指offer-二叉搜索树的第K个节点
- 62、二叉搜索树的第K个节点
- 二叉搜索树的第K个节点
- 剑指offer面试题63:二叉搜索树的第k个节点 Java实现
- 剑指offer——二叉搜索树的第k个节点
- 二叉搜索树的第K个节点
- Python:二叉搜索树的第k个节点