Trie and Tree-Based Data Structures for Efficient String Searching | Synapse