I'm working on a trie data structure. My simple, initial understanding: trie data structures require a fixed root node. This node cannot be deleted.
When iterating through all nodes in a trie (in pre-order), should the root node be reported included?
Should the "size" of the trie include the root node? It seems that it should match the number of items returned when iterating.
Maybe trie size and iterators should only reflect the leaf nodes? Is there any point in iterating through all the interior nodes?
Maybe my trie should start out truly empty? I can allow you to insert, modify, delete the root node?