这棵树有几片叶子

运行下面这段程序: class TNode: def __init__(self, name): self.name = name self.left = None self.righ

开始练习 →

第一步:把树建出来

最终作品第一步:写出 TNode,并按下面的形状把整棵树建好。 总部 / \ 华北 华南 / \ \ 北京 天

开始练习 →

第二步:三种 DFS 一起写

把前序、中序、后序三个都写出来,然后把三个序列各自的第一个拼起来输出,用 / 隔开。 (前序第一个 / 中序第一个 / 后序第一个)

开始练习 →

第三步:接上层序

用队列写层序遍历,输出层序序列的第 4 个。

开始练习 →

第四步:再写一棵前缀树

把 Trie 的 insert 和 search 写出来,插入 cat / car / card / dog,然后把两个查询结果拼起来输出: search("card") 和 search("ca")

开始练习 →

交付:建树 + 四种遍历 + Trie

这是这条路线的最终作品。把树建出来、四种遍历都写上、再写一棵 Trie,然后一次验完五条: 节点总数是 6,叶子是 3 前序第一个是「总部」,后序最后一个也是「总部」 中序第一个是「北京」 层序第 4 个是「北京」,一共 3 层 Trie

开始练习 →

⚠️ 二叉搜索树的规矩是什么

二叉搜索树之所以叫"搜索"树,是因为它规定【0】。

开始练习 →

BST 里通常不放什么

对 错 标准的二叉搜索树里,通常不允许出现【0】。

开始练习 →

怎么最省事地判断它是不是一棵 BST

对 错 判断一棵树是不是合法的 BST,最省事的办法是【0】。

开始练习 →

这条规矩管到哪一层

对 错 "左小右大"这条规矩要求的是【0】。

开始练习 →