Menu
Coddy logo textTech

Classe TrieNode

Lezione 3 di 14 del corso Trie - Serie sulle strutture dati n. 8 di Coddy.

Ogni nodo in un trie è un piccolo oggetto che contiene due informazioni: i children che dipendono da esso (una mappa da un carattere al nodo successivo) e un flag isEndOfWord che indica se il percorso dalla radice a questo nodo rappresenta una parola completa inserita.

Questa è l'intera classe. Nessun valore, nessuna chiave: la posizione di un nodo nell'albero È il suo significato. Un percorso di archi etichettati c, a, t dalla radice raggiunge il nodo in cui impostiamo isEndOfWord = true quando inseriamo "cat".

Iniziamo creando questa classe TrieNode: la classe Trie della prossima lezione la userà.

challenge icon

Sfida

Facile

Scrivi una classe TrieNode con un costruttore che non accetta input.

Inizializza due campi:

  • children impostato su una mappa vuota (o l'equivalente nella tua lingua per una mappa da caratteri a nodi).
  • isEndOfWord impostato su false.

Provalo tu

#include <stdio.h>
#include "trienode.h"

int main() {
    TrieNode* n = TrieNode_new();
    printf("%s %s\n",
           TrieNode_childrenCount(n) == 0 ? "true" : "false",
           n->isEndOfWord ? "true" : "false");
    return 0;
}

Tutte le lezioni di Trie - Serie sulle strutture dati n. 8

Esercitati da solo: Compilatore C online