剑指offer面试题54. 二叉搜索树的第k大节点(逆中序遍历)
题目描述
给定一棵二叉搜索树,请找出其中第k大的节点。
思路
详见链接
代码
class Solution:def kthLargest(self, root:TreeNode, k:int)->int:def dfs(root):if not root: returndfs(root.right)if self.k == 0: return self.k -= 1if self.k == 0:self.res = root.valdfs(root.left)self.k = kdfs(root)return self.res
复杂度
时间复杂度 O(N): 当树退化为链表时(全部为右子节点),无论 k的值大小,递归深度都为 N ,占用 O(N) 时间。
空间复杂度 O(N): 当树退化为链表时(全部为右子节点),系统使用 O(N) 大小的栈空间。
剑指offer面试题54. 二叉搜索树的第k大节点(逆中序遍历)相关推荐
- 剑指Offer - 面试题54. 二叉搜索树的第k大节点(二叉树循环遍历)
1. 题目 给定一棵二叉搜索树,请找出其中第k大的节点. 示例 1: 输入: root = [3,1,4,null,2], k = 13/ \1 4\2 输出: 4示例 2: 输入: root = [ ...
- leetcode —— 面试题54. 二叉搜索树的第k大节点
给定一棵二叉搜索树,请找出其中第k大的节点. 解法一:使用递归和中序遍历 # Definition for a binary tree node. # class TreeNode: # def __ ...
- 【LeetCode】剑指 Offer 54. 二叉搜索树的第k大节点
[LeetCode]剑指 Offer 54. 二叉搜索树的第k大节点 文章目录 [LeetCode]剑指 Offer 54. 二叉搜索树的第k大节点 一.中序遍历(提前返回) 一.中序遍历(提前返回) ...
- 剑指offer:二叉搜索树的第k个结点(中序遍历)
1. 题目描述 /*给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. */ 2. 思路 中序遍历二叉搜索树,第K个就是结 ...
- 【刷题-剑指 Offer】 54. 二叉搜索树的第k大节点
题目 给定一棵二叉搜索树,请找出其中第k大的节点. 我的解法:(中序遍历) /*** Definition for a binary tree node.* public class TreeNode ...
- 剑指Offer - 面试题36. 二叉搜索树与双向链表(中序循环/递归)
1. 题目 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表.要求不能创建任何新的节点,只能调整树中节点指针的指向. 特别地,我们希望可以就地完成转换操作.当转化完成以后,树中节点的左指 ...
- 剑指Offer - 面试题33. 二叉搜索树的后序遍历序列(递归)
1. 题目 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果.如果是则返回 true,否则返回 false.假设输入的数组的任意两个数字都互不相同. 参考以下这颗二叉搜索树:5/ \2 6 ...
- 剑指offer面试题[27]-二叉搜索树与双向链表
题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树中结点指针的指向. /* struct TreeNode {int val;struct Tr ...
- 剑指offer面试题36. 二叉搜索树与双向链表(中序遍历)(递归)
题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表.要求不能创建任何新的节点,只能调整树中节点指针的指向. 思路 详见链接 代码 #class Node: # def __ini ...
最新文章
- ZooKeeper最佳指南--云平台技术栈11
- interrupt InterruptException
- 卷积神经网络中的各种池化操作
- Android Fragment使用(三) Activity, Fragment, WebView的状态保存和恢复
- WebPart中的ReplaceTokens 方法
- php表格单元格怎么实现排序,javascript实现对表格元素进行排序操作
- Linq 学习笔记(二)
- 大规模研究表明,睡眠不足、压力给大脑带来的伤害,犹如脑震荡
- 快手:今年下架抄袭、搬运内容的违规视频20316个
- 微信小程序选择框问题 小程序picker点击显示object range-key=这里写要显示的字段
- 20155226-虚拟机与Linux之初体验
- “Hello World!”团队第五周第五次会议
- Gephi从入门到精通
- Latex中文期刊论文模板
- 电子书,世界名著,中国名著
- 轻量化网络ShuffleNet MobileNet v1/v2 解析
- 教你用Python 做PPT之制作动态图~做出来的效果高级又好看
- 《C专家编程》之 安静的改变
- 案例实践:用SPSS做K均值聚类分析
- oracle 正序 倒序 排列