Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

فئة Trie

الدرس 4 من 14 في دورة Tries - سلسلة هياكل البيانات #8 على Coddy.

فئة Trie نفسها بسيطة للغاية: فهي تمتلك حقلاً واحداً، root، وهو عبارة عن TrieNode. تبدأ كل عملية إدراج وبحث واستعلام من هذا الجذر وتنتقل عبر الشجرة حرفاً واحداً في كل مرة.

يقوم المنشئ (constructor) بإنشاء TrieNode جديد للجذر. لا يمتلك هذا الجذر أي أبناء بعد ولم يتم تمييزه كنهاية لأي كلمة، لذا يبدأ الـ trie فارغاً. الطرق (methods) التي سنضيفها في الدروس القادمة ستعمل على إنماء أبناء منه.

challenge icon

التحدي

سهل

اكتب فئة Trie مع منشئ (constructor) لا يأخذ أي مدخلات.

قم بتهيئة حقل واحد 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;
}

جميع دروس Tries - سلسلة هياكل البيانات #8