【算法】求二叉搜索树的第K个结点
来源:互联网 发布:ubuntu 卸载自带jdk 编辑:程序博客网 时间:2024/05/17 03:21
题目描述
给定一颗二叉搜索树,请找出其中的第k大的结点。
已知二叉搜索树的中序遍历就是有序序列,因此使用中序遍历思想(可递归,也可不递归),访问第K个结点即为所求的第K大的结点。
/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/import java.util.Stack;public class Solution { TreeNode KthNode(TreeNode pRoot, int k) { if(pRoot==null||k<0){ return null; } int count=0; Stack<TreeNode> s=new Stack<TreeNode>(); while(pRoot!=null||!s.isEmpty()){ if(pRoot!=null){ s.push(pRoot); pRoot=pRoot.left; }else{ TreeNode t=s.pop(); count++; if(count==k) return t; pRoot=t.right; } } return null; }}
阅读全文
0 0
- 【算法】求二叉搜索树的第K个结点
- 【二叉树】二叉搜索树的第k个结点
- 二叉搜索树第k个结点
- 【树14】二叉搜索树的第k个结点
- 剑指offerr--二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 《剑指offer》二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 剑指offer:二叉搜索树的第k个结点
- 58.二叉搜索树的第k个结点
- [剑指offer]二叉搜索树的第k个结点
- 二叉搜索树的第k个结点
- 二叉搜索树的第K个结点
- 深度解析tomcat核心配置文件server.xml
- 调用支付宝接口原理
- dll类型的项目debug中没有lib文件
- 栈的反转
- linux open函数
- 【算法】求二叉搜索树的第K个结点
- 数据结构实验之查找四:二分查找
- 做了4个微信小程序后,我总结了一个快速开发流程
- 元胞自动机简介(CA自动机)
- 对称的二叉树
- 基于Spring Boot、Spring Cloud、Docker的微服务系统架构实践
- DB2 -SQLSTATE
- linux下find的用法
- httpclient