@@ 57-105 (lines=49) @@ | ||
54 | print(key) |
|
55 | ||
56 | ||
57 | class TernarySearchTriesUnitTest(unittest.TestCase): |
|
58 | def test_put(self): |
|
59 | st = TernarySearchTries() |
|
60 | ||
61 | st.put("one", 1) |
|
62 | st.put("two", 2) |
|
63 | st.put("three", 3) |
|
64 | st.put("six", 6) |
|
65 | st.put("ten", 10) |
|
66 | st.put("ten", 10) |
|
67 | ||
68 | self.assertEqual(1, st.get("one")) |
|
69 | self.assertEqual(2, st.get("two")) |
|
70 | self.assertEqual(3, st.get("three")) |
|
71 | ||
72 | self.assertTrue(st.contains_key("one")) |
|
73 | self.assertTrue(st.contains_key("two")) |
|
74 | ||
75 | self.assertEqual(5, st.size()) |
|
76 | self.assertFalse(st.is_empty()) |
|
77 | ||
78 | st.delete("one") |
|
79 | self.assertFalse(st.contains_key("one")) |
|
80 | self.assertEqual(4, st.size()) |
|
81 | ||
82 | st.delete("ten") |
|
83 | self.assertFalse(st.contains_key("ten")) |
|
84 | self.assertEqual(3, st.size()) |
|
85 | ||
86 | st.delete("three") |
|
87 | self.assertFalse(st.contains_key("three")) |
|
88 | self.assertEqual(2, st.size()) |
|
89 | ||
90 | for i in range(100): |
|
91 | st.put(str(i), i) |
|
92 | self.assertEqual(i, st.get(str(i))) |
|
93 | ||
94 | for key in st.keys(): |
|
95 | print(key) |
|
96 | ||
97 | for i in range(100): |
|
98 | st.delete(str(i)) |
|
99 | self.assertFalse(st.contains_key(str(i))) |
|
100 | ||
101 | st.put('there', 2) |
|
102 | st.put('this', 2) |
|
103 | print('with prefix t') |
|
104 | for key in st.keys_with_prefix('t'): |
|
105 | print(key) |
|
106 | ||
107 | ||
108 | if __name__ == '__main__': |
|
@@ 6-54 (lines=49) @@ | ||
3 | from pyalgs.data_structures.strings.search_tries import RWaySearchTries, TernarySearchTries |
|
4 | ||
5 | ||
6 | class RWaySearchTriesUnitTest(unittest.TestCase): |
|
7 | def test_put(self): |
|
8 | st = RWaySearchTries() |
|
9 | ||
10 | st.put("one", 1) |
|
11 | st.put("two", 2) |
|
12 | st.put("three", 3) |
|
13 | st.put("six", 6) |
|
14 | st.put("ten", 10) |
|
15 | st.put("ten", 10) |
|
16 | ||
17 | self.assertEqual(1, st.get("one")) |
|
18 | self.assertEqual(2, st.get("two")) |
|
19 | self.assertEqual(3, st.get("three")) |
|
20 | ||
21 | self.assertTrue(st.contains_key("one")) |
|
22 | self.assertTrue(st.contains_key("two")) |
|
23 | ||
24 | self.assertEqual(5, st.size()) |
|
25 | self.assertFalse(st.is_empty()) |
|
26 | ||
27 | st.delete("one") |
|
28 | self.assertFalse(st.contains_key("one")) |
|
29 | self.assertEqual(4, st.size()) |
|
30 | ||
31 | st.delete("ten") |
|
32 | self.assertFalse(st.contains_key("ten")) |
|
33 | self.assertEqual(3, st.size()) |
|
34 | ||
35 | st.delete("three") |
|
36 | self.assertFalse(st.contains_key("three")) |
|
37 | self.assertEqual(2, st.size()) |
|
38 | ||
39 | for i in range(100): |
|
40 | st.put(str(i), i) |
|
41 | self.assertEqual(i, st.get(str(i))) |
|
42 | ||
43 | for key in st.keys(): |
|
44 | print(key) |
|
45 | ||
46 | for i in range(100): |
|
47 | st.delete(str(i)) |
|
48 | self.assertFalse(st.contains_key(str(i))) |
|
49 | ||
50 | st.put('there', 2) |
|
51 | st.put('this', 2) |
|
52 | print('with prefix t') |
|
53 | for key in st.keys_with_prefix('t'): |
|
54 | print(key) |
|
55 | ||
56 | ||
57 | class TernarySearchTriesUnitTest(unittest.TestCase): |