LeetEye LeetEye
Cheat Sheet

Tries Cheat Sheet

Quick reference for coding interviews. Bookmark this page!

What is Tries?

Efficiently store and search strings with prefix trees.

Trigger Words

When you see these in a problem, think Tries:

implement trie (prefix tree) tries design add and search words data structure word search ii

Template Code

class TrieNode:
    def __init__(self):
        self.children = {}
        self.is_end = False

class Trie:
    def __init__(self):
        self.root = TrieNode()
    
    def insert(self, word: str) -> None:
        node = self.root
        for char in word:
            if char not in node.children:
                node.children[char] = TrieNode()
            node = node.children[char]
        node.is_end = True
    
    def search(self, word: str) -> bool:
        node = self.root
        for char in word:
            if char not in node.children:
                return False
            node = node.children[char]
        return node.is_end
    
    def startsWith(self, prefix: str) -> bool:
        node = self.root
        for char in prefix:
            if char not in node.children:
                return False
            node = node.children[char]
        return True

Complexity

Typical Time O(m) per operation
Typical Space O(total chars)

Common Variations

  • Basic Tries
  • Tries with constraints
  • Optimized Tries

Practice Problems

See all Tries problems →

Practice Tries

Learn to recognize patterns instantly with interactive MCQs.

Download LeetEye Free
Practice in LeetEye