走完 c-a 之后呢

同一个词库。运行下面这段程序: #include <iostream> #include <map> #include <string> using namespace std; struct Trie

开始练习 →

把词一个个插进前缀树

补全 trie_insert:沿着每个字符往下走,没有的路就现开一条,走到词尾把 end 标成 true。四个词全插完之后,输出根下面有几条不同的分支。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

查一个完整的词在不在

补全 trie_search:整个词都在、而且末尾有标记才算在。查 car,输出结果。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

是前缀但不是词

同一个 trie_search,这次查 ca。它是 cat / car / card 三个词的开头,但它自己不是一个词——下面这版少了末尾标记的判断,会答错,把它改对。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

有几个词以它开头

补全 count_words:递归数出一个节点下面一共有多少个词尾标记。这次数的是以 ca 开头的词。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

够用的树至少要有什么

手写一棵能用的二叉树,至少要有【0】。

开始练习 →

四种遍历的共同点

第 1 步:同一棵树,两种走法 第 2 步:上:前序,一头扎到底 第 3 步:下:层序,一层层横扫 第 4 步:顺序不同,六个都走到了 1 2 3 4 5 6 1 2 4 5 3 6 1 2 3 4 5 6 前序、中序、后序、层序四种遍历,

开始练习 →

这棵树有几片叶子

运行下面这段程序: #include <iostream> #include <queue> #include <string> #include <vector> using namespa

开始练习 →

第一步把树建出来

最终作品第一步:按组织架构把整棵树建好——总部下面是华北、华南;华北下面是北京、天津;华南只在右边挂广州。建好之后输出华南右边挂的是谁。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

第二步三种 DFS 一起写

把前序、中序、后序三个都写出来,然后把三个序列各自的第一个拼起来输出,用 / 隔开(前序第一个 / 中序第一个 / 后序第一个)。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →