61二叉搜索树的第k个结点
题目描述
/* struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {} }; */ class Solution { public:TreeNode* KthNode(TreeNode* pRoot, int k){if(pRoot == nullptr){return nullptr;}stack<TreeNode*> s; //s.push(pRoot);TreeNode* p = pRoot;int cnt = 0;while(!s.empty() || p != nullptr){while(p != nullptr){s.push(p);p = p->left;}if(!s.empty()){p = s.top();s.pop(); ++cnt;if(cnt == k){return p;} p = p->right; }}return nullptr;} };
转载于:https://www.cnblogs.com/dingxiaoqiang/p/8310982.html
61二叉搜索树的第k个结点相关推荐
- 牛客题霸 [二叉搜索树的第k个结点]C++题解/答案
牛客题霸 [二叉搜索树的第k个结点]C++题解/答案 题目: 给定一棵二叉搜索树,请找出其中的第k小的结点. 题解: 二叉搜索树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它 ...
- 剑指offer——面试题63:二叉搜索树的第k个结点
剑指offer--面试题63:二叉搜索树的第k个结点 Solution1: 20180916重做 /* struct TreeNode {int val;struct TreeNode *left;s ...
- 《剑指Offer》51. 二叉搜索树的第k个结点
题目:51. 二叉搜索树的第k个结点 知识点:二叉搜索树 题目描述: 给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为 ...
- 剑指offer:二叉搜索树的第k个结点(中序遍历)
1. 题目描述 /*给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. */ 2. 思路 中序遍历二叉搜索树,第K个就是结 ...
- 二叉搜索树的第k个节点java_剑指Offer62:二叉搜索树的第k个结点(Java)
思路分析: 首先了解搜索二叉树在中序遍历下的结果是有序的.设一个全局变量num记录次数,每当中序遍历到一个节点时,num++.当num等于k时,返回node即结果. 难在递归上 题目描述 给定一棵二叉 ...
- 二叉搜索树的第k个结点
2019独角兽企业重金招聘Python工程师标准>>> 题目描述 给定一颗二叉搜索树,请找出其中的第k大的结点.例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值 ...
- 60、二叉搜索树的第k个结点
一.题目 给定一颗二叉搜索树,请找出其中的第k大的结点.例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4. 二.解法 1 package algorit ...
- 剑指offer之二叉搜索树的第K个结点
题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. 解题思路 二叉搜索树的中序遍历是顺序结构,利用中序遍历即可求 ...
- NC81 二叉搜索树的第k个结点
和力扣的230很相似,不过230是返回val值,这道题是返回结点 喵! 方法1 1.利用BST的性质,中序遍历为升序. 2.定义全局的 count(用于计数) 和 res结点(用于接收结点) 3.定义 ...
最新文章
- python装饰设备_Python: 装饰器的小例子
- CVPR2020检测类论文最全汇总:136篇论文方向细分(附代码和论文打包下载)
- 使用auditd监控Linux的文件变化
- Unity UGUI - Canvas / Camera
- 2个网页跳来跳去_成为搜索产品经理(2):认识网络爬虫
- SpringBoot核心注解介绍
- 【第一期】史上最全电子漫画合集,收藏了。
- 案例解读:RMAN 备份控制文件报错 ORA-00230
- Android 小技巧-- TextView与EditText 同步显示
- 如何保证进程间同步工作_如何在工作自动化进程中占据优势?开关电源芯片U6605D有答案...
- 最常见的Linux用户程序异常----Segment Fault
- 反射--笔记(第一篇)
- 修改msde登录方式,设置sa密码为空
- Ubuntu安装vmPlayer
- 巴特沃斯低通滤波器 matlab,基于MATLAB做巴特沃斯低通滤波器..doc
- 微端服务器添加文件,微端服务器配置
- 如何判断一个APP页面是原生的还是H5页面
- LeetCode 1240. Tiling a Rectangle with the Fewest Squares
- 个人关于颈椎病治疗和保养的一些经验总结!
- Linux虚拟机下FTP服务器的搭建(详细)
热门文章
- f12获取网页文本_8招教你快速搞定网页内容禁止复制粘贴,想怎么复制就怎么复制...
- unity怎么制作云飘动_Unity 如何制作星空粒子效果?
- matlab fftshift_数字信号处理没有Matlab?用Python一样很爽
- html无损转换pdf,Pdf2html :高保真PDF至HTML转换
- linq from 多个sum_快手重拳打击劣质电商 7月以来封禁700多个团伙账号
- SCI论文写作训练营笔记汇总01_概述+文献检索与管理
- python如何读取字典的关键字_python提取字典key列表的方法
- LeetCode 900. RLE 迭代器(模拟/二分查找)
- 程序员面试金典 - 面试题 03.05. 栈排序(两栈)
- LeetCode 93. 复原IP地址(回溯)