File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed
implement-trie-prefix-tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Trie :
2
+ def __init__ (self ):
3
+ self .children = {}
4
+ self .is_end_of_word = False
5
+
6
+ def insert (self , word : str ) -> None :
7
+ node = self
8
+
9
+ for char in word :
10
+ if char not in node .children :
11
+ node .children [char ] = Trie ()
12
+
13
+ node = node .children [char ]
14
+
15
+ node .is_end_of_word = True
16
+
17
+ def search (self , word : str ) -> bool :
18
+ node = self
19
+
20
+ for char in word :
21
+ if char not in node .children :
22
+ return False
23
+
24
+ node = node .children [char ]
25
+
26
+ return node .is_end_of_word
27
+
28
+ def startsWith (self , prefix : str ) -> bool :
29
+ node = self
30
+
31
+ for char in prefix :
32
+ if char not in node .children :
33
+ return False
34
+
35
+ node = node .children [char ]
36
+
37
+ return True
You can’t perform that action at this time.
0 commit comments