点击蓝色 “小鹿动画学编程” 关注我哦!
加个 “星标” ,每天一篇动画喂饱你!
作者 | 小鹿
来源 | 小鹿动画学编程
题目
给定一棵二叉搜索树,请找出其中的第 K 大节点。如下图中二叉树中,按照节点数值的大小顺序,第三大节点的值为 4。
如图:
问题分析
题目让求二叉树节点中的第 K 大节点值,想到这里,需要对树中所有的节点进行排序我们才能进行求第 K 大节点值。想到排序,就会想到二叉树的遍历。
二叉树中能够从小到大进行遍历的非中序遍历莫属了,所以先通过中序遍历,然后直接求出第 K 大节点值。
动画实现
代码实现
JavaScript
Java
Python
测试用例
完全二叉树、非完全二叉树 —— 普通测试
只有左子节点的二叉树、只有右子节点的二叉树、只有一个节点的二叉树 —— 特殊测试
K 的范围、空树 —— 输入测试
「小鹿动画学编程」用动画的形式和你分享技术!
长按识别二维码关注