File tree Expand file tree Collapse file tree
implement-trie-prefix-tree Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ class TrieNode :
2+ def __init__ (self ):
3+ self .children = {}
4+ self .is_end = False
5+
6+
7+ class Trie :
8+
9+ def __init__ (self ):
10+ self .root = TrieNode ()
11+
12+ def insert (self , word : str ) -> None :
13+ node = self .root
14+ for ch in word :
15+ if ch not in node .children :
16+ node .children [ch ] = TrieNode ()
17+ node = node .children [ch ]
18+ node .is_end = True
19+
20+ def search (self , word : str ) -> bool :
21+ node = self .root
22+ for ch in word :
23+ if ch not in node .children :
24+ return False
25+ node = node .children [ch ]
26+ return node .is_end
27+
28+ def startsWith (self , prefix : str ) -> bool :
29+ node = self .root
30+ for ch in prefix :
31+ if ch not in node .children :
32+ return False
33+ node = node .children [ch ]
34+ return True
35+
36+
37+ # Your Trie object will be instantiated and called as such:
38+ # obj = Trie()
39+ # obj.insert(word)
40+ # param_2 = obj.search(word)
41+ # param_3 = obj.startsWith(prefix)
You can’t perform that action at this time.
0 commit comments