Menu
CoddyTech

Trie 类

Coddy 字典树:数据结构系列第 8 课 课程的第 4 课,共 14 课。

Trie 类本身很简单:它只有一个字段 root,其类型是 TrieNode。每次插入、搜索和查找都会从这个根节点开始,每次沿着树向下遍历一个字符。

构造函数会为根节点创建一个全新的 TrieNode。这个根节点还没有子节点,也没有标记为任何单词的结尾,因此字典树一开始是空的。我们将在接下来的课中添加方法,让它逐渐拥有子节点。

challenge icon

挑战

简单

编写一个类 Trie,并为它编写一个不接受任何输入的构造函数。

将单个字段 root 初始化为一个新的 TrieNode(使用你在上一课中编写的类)。

亲手试试

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "trie.h"

int main() {
    Trie t;
    Trie_init(&t);
    char line[1024];
    while (fgets(line, sizeof(line), stdin)) {
        line[strcspn(line, "\r\n")] = '\0';
        char* cmd = strtok(line, " \t");
        if (!cmd) continue;
        if (strcmp(cmd, "rootIsEmpty") == 0) { printf("%s\n", TrieNode_childrenCount(t.root) == 0 ? "true" : "false"); }
    }
    return 0;
}

字典树:数据结构系列第 8 课中的所有课

自己练习: C 在线编译器