void findWords(trie *root, char *filter)
{
    if (!root) return;

    if (*filter == 0)  // When you reach the end of the filter at the
end of a valid word, add the word.
    {
        if (root->words) words.add(root->word);
    }
    else if (*filter == '.')   // Search for words with any letter
    {
        for(int i = 'a'; i <= 'z' ; ++i)
            findWords(root->link[i], filter+1);
    }
    else  // Search for words with the required letter
    {
         findWords(root->link[*filter], filter+1);
    }
}

On May 28, 4:47 am, avinesh saini <avinesh.sa...@gmail.com> wrote:
> How to search all the matching words for a filter in a trie.
> e.g.
> searching by filter  "...r..m" will find all the words(of length = 7) in
> trie in which 4th character is 'r' and 7th character is 'm'.
>
> --
> *
> *
> *thanks & regards,*
> *Avinesh
> *

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to algogeeks+unsubscr...@googlegroups.com.


Reply via email to