Trie 里每往下一层代表什么
前缀树(Trie)里,从一个节点往下走一步,代表【0】。
Trie 查前缀为什么快
用 Trie 查"有没有以某个前缀开头的词"特别快,因为【0】。
走完 c-a-t 之后是不是一个完整的词
词库里有 cat、car、card、dog。运行下面这段程序: def insert(t, word): node = t for ch in word: if ch not in node:
走完 c-a 之后呢
同一个词库。运行下面这段程序: def insert(t, word): node = t for ch in word: if ch not in node: node[ch] =
把词一个个插进前缀树
补全 insert:沿着每个字符往下走,没有的路就现开一条,走到词尾打上 "#" 标记。 四个词全插完之后,输出根下面有几条不同的分支。
查一个完整的词在不在
补全 search:整个词都在、而且末尾有标记才算在。 查 car,输出结果。
⚠️ 是前缀,但不是词
同一个 search,这次查 ca。 它是 cat / car / card 三个词的开头,但它自己不是一个词——少了末尾那个标记的判断就会答错。
有几个词是以它开头的
补全 count_prefix:先走到前缀那个节点,再递归数出它下面一共有多少个词尾标记。 这次数的是以 ca 开头的词。
一个够用的树至少要有哪几样
手写一棵能用的二叉树,至少要有【0】。
四种遍历的共同点是什么
前序、中序、后序、层序四种遍历,共同点是【0】。