动画:面试必刷之二叉树搜索第 K 大节点
16lz
2021-01-22
题目
给定一棵二叉搜索树,请找出其中的第 K 大节点。如下图中二叉树中,按照节点数值的大小顺序,第三大节点的值为 4。
如图:
问题分析
题目让求二叉树节点中的第 K 大节点值,想到这里,需要对树中所有的节点进行排序我们才能进行求第 K 大节点值。想到排序,就会想到二叉树的遍历。
二叉树中能够从小到大进行遍历的非中序遍历莫属了,所以先通过中序遍历,然后直接求出第 K 大节点值。
动画实现
代码实现
JavaScript
Java
Python
测试用例
- 完全二叉树、非完全二叉树 —— 普通测试
- 只有左子节点的二叉树、只有右子节点的二叉树、只有一个节点的二叉树 —— 特殊测试
- K 的范围、空树 —— 输入测试
更多相关文章
- 数据结构与算法: 三十张图弄懂「图的两种遍历方式」
- 图解LeetCode第 103 号问题:二叉树的锯齿形层次遍历
- 【图解数据结构】 一组动画彻底理解二叉树遍历
- 五分钟学算法:二叉树的后序遍历
- 每天一算:二叉树的中序遍历
- SSH AKS集群节点的几种方法(一)
- 二叉树及其四大遍历
- 动画:面试算法之求二叉树的下一节点
- PHP简短而安全的数组遍历