230. Kth Smallest Element in a BST
Posted 阿怪123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了230. Kth Smallest Element in a BST相关的知识,希望对你有一定的参考价值。
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public int kthSmallest(TreeNode root, int k) { //二叉搜索树,左子如果不是空,则必小于该节点 //右子不为空,则必大于该节点。同样每个分支也都满足这个条件 Stack<TreeNode> st=new Stack<TreeNode>(); if(root==null) return 0; int res=0; int count=0; TreeNode temp=root; while(temp!=null||!st.isEmpty()) { if(temp!=null) { st.push(temp); temp=temp.left; } else if(!st.isEmpty()) { temp=st.pop(); count++; if(count==k) { res=temp.val; break; } if(temp.right!=null) temp=temp.right; else temp=null; } } return res; } }
以上是关于230. Kth Smallest Element in a BST的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode 230. Kth Smallest Element in a BST
Leetcode 230. Kth Smallest Element in a BST
230. Kth Smallest Element in a BST
230.Kth Smallest Element in a BST