trie-typed 2.4.5 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -49
- package/dist/cjs/index.cjs +533 -105
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs-legacy/index.cjs +532 -104
- package/dist/cjs-legacy/index.cjs.map +1 -1
- package/dist/esm/index.mjs +533 -105
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm-legacy/index.mjs +532 -104
- package/dist/esm-legacy/index.mjs.map +1 -1
- package/dist/types/data-structures/base/index.d.ts +1 -0
- package/dist/types/data-structures/base/iterable-element-base.d.ts +1 -1
- package/dist/types/data-structures/base/iterable-entry-base.d.ts +8 -8
- package/dist/types/data-structures/base/linear-base.d.ts +3 -3
- package/dist/types/data-structures/binary-tree/avl-tree.d.ts +380 -51
- package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +487 -147
- package/dist/types/data-structures/binary-tree/binary-tree.d.ts +956 -80
- package/dist/types/data-structures/binary-tree/bst.d.ts +816 -29
- package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +610 -31
- package/dist/types/data-structures/binary-tree/segment-tree.d.ts +326 -135
- package/dist/types/data-structures/binary-tree/tree-map.d.ts +3781 -6
- package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +3607 -201
- package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +2874 -65
- package/dist/types/data-structures/binary-tree/tree-set.d.ts +3528 -6
- package/dist/types/data-structures/graph/abstract-graph.d.ts +4 -4
- package/dist/types/data-structures/graph/directed-graph.d.ts +429 -47
- package/dist/types/data-structures/graph/map-graph.d.ts +59 -1
- package/dist/types/data-structures/graph/undirected-graph.d.ts +393 -59
- package/dist/types/data-structures/hash/hash-map.d.ts +473 -89
- package/dist/types/data-structures/heap/heap.d.ts +581 -99
- package/dist/types/data-structures/heap/max-heap.d.ts +46 -0
- package/dist/types/data-structures/heap/min-heap.d.ts +59 -0
- package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +646 -47
- package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +596 -68
- package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +793 -12
- package/dist/types/data-structures/matrix/matrix.d.ts +499 -0
- package/dist/types/data-structures/priority-queue/max-priority-queue.d.ts +57 -0
- package/dist/types/data-structures/priority-queue/min-priority-queue.d.ts +60 -0
- package/dist/types/data-structures/priority-queue/priority-queue.d.ts +60 -0
- package/dist/types/data-structures/queue/deque.d.ts +593 -71
- package/dist/types/data-structures/queue/queue.d.ts +463 -42
- package/dist/types/data-structures/stack/stack.d.ts +384 -32
- package/dist/types/data-structures/trie/trie.d.ts +470 -48
- package/dist/types/interfaces/graph.d.ts +1 -1
- package/dist/types/types/common.d.ts +2 -2
- package/dist/types/types/data-structures/binary-tree/segment-tree.d.ts +1 -1
- package/dist/types/types/data-structures/heap/heap.d.ts +1 -0
- package/dist/types/types/data-structures/linked-list/skip-linked-list.d.ts +1 -4
- package/dist/types/types/data-structures/priority-queue/priority-queue.d.ts +1 -0
- package/dist/types/types/utils/validate-type.d.ts +4 -4
- package/dist/umd/trie-typed.js +530 -102
- package/dist/umd/trie-typed.js.map +1 -1
- package/dist/umd/trie-typed.min.js +1 -1
- package/dist/umd/trie-typed.min.js.map +1 -1
- package/package.json +2 -2
- package/src/data-structures/base/index.ts +1 -0
- package/src/data-structures/base/iterable-element-base.ts +4 -5
- package/src/data-structures/base/iterable-entry-base.ts +8 -8
- package/src/data-structures/base/linear-base.ts +3 -3
- package/src/data-structures/binary-tree/avl-tree.ts +386 -51
- package/src/data-structures/binary-tree/binary-indexed-tree.ts +596 -247
- package/src/data-structures/binary-tree/binary-tree.ts +956 -81
- package/src/data-structures/binary-tree/bst.ts +840 -35
- package/src/data-structures/binary-tree/red-black-tree.ts +689 -97
- package/src/data-structures/binary-tree/segment-tree.ts +498 -249
- package/src/data-structures/binary-tree/tree-map.ts +3784 -7
- package/src/data-structures/binary-tree/tree-multi-map.ts +3614 -211
- package/src/data-structures/binary-tree/tree-multi-set.ts +2874 -65
- package/src/data-structures/binary-tree/tree-set.ts +3531 -10
- package/src/data-structures/graph/abstract-graph.ts +4 -4
- package/src/data-structures/graph/directed-graph.ts +429 -47
- package/src/data-structures/graph/map-graph.ts +59 -1
- package/src/data-structures/graph/undirected-graph.ts +393 -59
- package/src/data-structures/hash/hash-map.ts +476 -92
- package/src/data-structures/heap/heap.ts +581 -99
- package/src/data-structures/heap/max-heap.ts +46 -0
- package/src/data-structures/heap/min-heap.ts +59 -0
- package/src/data-structures/linked-list/doubly-linked-list.ts +646 -47
- package/src/data-structures/linked-list/singly-linked-list.ts +596 -68
- package/src/data-structures/linked-list/skip-linked-list.ts +1067 -90
- package/src/data-structures/matrix/matrix.ts +584 -12
- package/src/data-structures/priority-queue/max-priority-queue.ts +57 -0
- package/src/data-structures/priority-queue/min-priority-queue.ts +60 -0
- package/src/data-structures/priority-queue/priority-queue.ts +60 -0
- package/src/data-structures/queue/deque.ts +592 -70
- package/src/data-structures/queue/queue.ts +463 -42
- package/src/data-structures/stack/stack.ts +384 -32
- package/src/data-structures/trie/trie.ts +470 -48
- package/src/interfaces/graph.ts +1 -1
- package/src/types/common.ts +2 -2
- package/src/types/data-structures/binary-tree/segment-tree.ts +1 -1
- package/src/types/data-structures/heap/heap.ts +1 -0
- package/src/types/data-structures/linked-list/skip-linked-list.ts +2 -1
- package/src/types/data-structures/priority-queue/priority-queue.ts +1 -0
- package/src/types/utils/validate-type.ts +4 -4
package/README.md
CHANGED
|
@@ -35,36 +35,6 @@ yarn add trie-typed
|
|
|
35
35
|
|
|
36
36
|
[//]: # (No deletion!!! Start of Example Replace Section)
|
|
37
37
|
|
|
38
|
-
### basic Trie creation and add words
|
|
39
|
-
```typescript
|
|
40
|
-
// Create a simple Trie with initial words
|
|
41
|
-
const trie = new Trie(['apple', 'app', 'apply']);
|
|
42
|
-
|
|
43
|
-
// Verify size
|
|
44
|
-
console.log(trie.size); // 3;
|
|
45
|
-
|
|
46
|
-
// Check if words exist
|
|
47
|
-
console.log(trie.has('apple')); // true;
|
|
48
|
-
console.log(trie.has('app')); // true;
|
|
49
|
-
|
|
50
|
-
// Add a new word
|
|
51
|
-
trie.add('application');
|
|
52
|
-
console.log(trie.size); // 4;
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
### Trie getWords and prefix search
|
|
56
|
-
```typescript
|
|
57
|
-
const trie = new Trie(['apple', 'app', 'apply', 'application', 'apricot']);
|
|
58
|
-
|
|
59
|
-
// Get all words with prefix 'app'
|
|
60
|
-
const appWords = trie.getWords('app');
|
|
61
|
-
console.log(appWords); // contains 'app';
|
|
62
|
-
console.log(appWords); // contains 'apple';
|
|
63
|
-
console.log(appWords); // contains 'apply';
|
|
64
|
-
console.log(appWords); // contains 'application';
|
|
65
|
-
expect(appWords).not.toContain('apricot');
|
|
66
|
-
```
|
|
67
|
-
|
|
68
38
|
### Trie isPrefix and isAbsolutePrefix checks
|
|
69
39
|
```typescript
|
|
70
40
|
const trie = new Trie(['tree', 'trial', 'trick', 'trip', 'trie']);
|
|
@@ -82,25 +52,6 @@ yarn add trie-typed
|
|
|
82
52
|
console.log(trie.size); // 5;
|
|
83
53
|
```
|
|
84
54
|
|
|
85
|
-
### Trie delete and iteration
|
|
86
|
-
```typescript
|
|
87
|
-
const trie = new Trie(['car', 'card', 'care', 'careful', 'can', 'cat']);
|
|
88
|
-
|
|
89
|
-
// Delete a word
|
|
90
|
-
trie.delete('card');
|
|
91
|
-
console.log(trie.has('card')); // false;
|
|
92
|
-
|
|
93
|
-
// Word with same prefix still exists
|
|
94
|
-
console.log(trie.has('care')); // true;
|
|
95
|
-
|
|
96
|
-
// Size decreased
|
|
97
|
-
console.log(trie.size); // 5;
|
|
98
|
-
|
|
99
|
-
// Iterate through all words
|
|
100
|
-
const allWords = [...trie];
|
|
101
|
-
console.log(allWords.length); // 5;
|
|
102
|
-
```
|
|
103
|
-
|
|
104
55
|
### Trie for autocomplete search index
|
|
105
56
|
```typescript
|
|
106
57
|
// Trie is perfect for autocomplete: O(m + k) where m is prefix length, k is results
|