Exemplo n.º 1
0
        private NodeFirstLevelTop <T> PutInnerFirst(NodeFirstLevelTop <T> node, string s, int d, T value)
        {
            if (node == null)
            {
                node = new NodeFirstLevelTop <T>();
            }

            int index = (s[d] - _startSymbol);
            NodeFirstLevelBottom <T> node1 = node.Next[index];

            if (node1 == null)
            {
                node1 = new NodeFirstLevelBottom <T>();
            }
            d++;
            int index1 = (s[d] - _startSymbol);

            node1.Next[index1] = PutInnerOther(node1.Next[index1], s, d + 1, value);

            node.Next[index] = node1;

            return(node);
        }
Exemplo n.º 2
0
 private void Put(string s, T value)
 {
     _root = PutInnerFirst(_root, s, 0, value);
 }