avl-tree-typed 1.19.44 → 1.20.0
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 +192 -197
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,179 +1,218 @@
|
|
|
1
1
|
# What
|
|
2
|
-
|
|
3
2
|
## Brief
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
Binary Tree, Binary Search Tree (BST), AVL Tree, Tree Multiset, Segment Tree, Binary Indexed Tree, Graph, Directed Graph, Undirected Graph, Linked List, Singly Linked List, Doubly Linked List, Queue, Object Deque, Array Deque, Stack, Hash, Coordinate Set, Coordinate Map, Heap, Priority Queue, Max Priority Queue, Min Priority Queue, Trie
|
|
7
|
-
|
|
8
|
-
## Algorithms list only a few out, you can discover more in API docs
|
|
3
|
+
This is a standalone AVL Tree data structure from the data-structure-typed collection. If you wish to access more data structures or advanced features, you can transition to directly installing the complete [data-structure-typed](https://www.npmjs.com/package/data-structure-typed) package
|
|
9
4
|
|
|
10
|
-
DFS, DFSIterative, BFS, morris, Bellman-Ford Algorithm, Dijkstra's Algorithm, Floyd-Warshall Algorithm, Tarjan's Algorithm
|
|
11
|
-
|
|
12
|
-
## Code design
|
|
13
|
-
By strictly adhering to object-oriented design (BinaryTree -> BST -> AVLTree -> TreeMultiset), you can seamlessly inherit the existing data structures to implement the customized ones you need. Object-oriented design stands as the optimal approach to data structure design.
|
|
14
5
|
|
|
15
6
|
# How
|
|
16
7
|
|
|
17
8
|
## install
|
|
18
|
-
###
|
|
19
|
-
|
|
9
|
+
### npm
|
|
20
10
|
```bash
|
|
21
|
-
|
|
11
|
+
npm i avl-tree-typed
|
|
22
12
|
```
|
|
23
|
-
|
|
24
|
-
### npm
|
|
25
|
-
|
|
13
|
+
### yarn
|
|
26
14
|
```bash
|
|
27
|
-
|
|
15
|
+
yarn add avl-tree-typed
|
|
28
16
|
```
|
|
17
|
+
### methods
|
|
18
|
+

|
|
29
19
|
|
|
30
|
-
###
|
|
31
|
-
|
|
20
|
+
### snippet
|
|
32
21
|
#### TS
|
|
22
|
+
|
|
33
23
|
```typescript
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
expect(bfsIDs[0]).toBe(11);
|
|
55
|
-
|
|
56
|
-
const objBST = new BST<BSTNode<{ id: number, keyA: number }>>();
|
|
57
|
-
objBST.add(11, {id: 11, keyA: 11});
|
|
58
|
-
objBST.add(3, {id: 3, keyA: 3});
|
|
59
|
-
|
|
60
|
-
objBST.addMany([{id: 15, keyA: 15}, {id: 1, keyA: 1}, {id: 8, keyA: 8},
|
|
61
|
-
{id: 13, keyA: 13}, {id: 16, keyA: 16}, {id: 2, keyA: 2},
|
|
62
|
-
{id: 6, keyA: 6}, {id: 9, keyA: 9}, {id: 12, keyA: 12},
|
|
63
|
-
{id: 14, keyA: 14}, {id: 4, keyA: 4}, {id: 7, keyA: 7},
|
|
64
|
-
{id: 10, keyA: 10}, {id: 5, keyA: 5}]);
|
|
65
|
-
|
|
66
|
-
objBST.remove(11);
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const avlTree = new AVLTree();
|
|
70
|
-
avlTree.addMany([11, 3, 15, 1, 8, 13, 16, 2, 6, 9, 12, 14, 4, 7, 10, 5])
|
|
71
|
-
avlTree.isAVLBalanced(); // true
|
|
72
|
-
avlTree.remove(10);
|
|
73
|
-
avlTree.isAVLBalanced(); // true
|
|
24
|
+
import {AVLTree, AVLTreeNode} from 'data-structure-typed';
|
|
25
|
+
// /* or if you prefer */ import {AVLTree} from 'avl-tree-typed';
|
|
26
|
+
|
|
27
|
+
const avlTree = new AVLTree<AVLTreeNode<number>>();
|
|
28
|
+
|
|
29
|
+
const idsOrVals = [11, 3, 15, 1, 8, 13, 16, 2, 6, 9, 12, 14, 4, 7, 10, 5];
|
|
30
|
+
avlTree.addMany(idsOrVals, idsOrVals);
|
|
31
|
+
|
|
32
|
+
const node6 = avlTree.get(6);
|
|
33
|
+
node6 && avlTree.getHeight(node6) // 3
|
|
34
|
+
node6 && avlTree.getDepth(node6) // 1
|
|
35
|
+
const getNodeById = avlTree.get(10, 'id');
|
|
36
|
+
getNodeById?.id // 10
|
|
37
|
+
|
|
38
|
+
const getMinNodeByRoot = avlTree.getLeftMost();
|
|
39
|
+
getMinNodeByRoot?.id // 1
|
|
40
|
+
|
|
41
|
+
const node15 = avlTree.get(15);
|
|
42
|
+
const getMinNodeBySpecificNode = node15 && avlTree.getLeftMost(node15);
|
|
43
|
+
getMinNodeBySpecificNode?.id // 12
|
|
74
44
|
|
|
45
|
+
const subTreeSum = node15 && avlTree.subTreeSum(node15);
|
|
46
|
+
subTreeSum // 70
|
|
47
|
+
|
|
48
|
+
const lesserSum = avlTree.lesserSum(10);
|
|
49
|
+
lesserSum // 45
|
|
50
|
+
|
|
51
|
+
const node11 = avlTree.get(11);
|
|
52
|
+
node11?.id // 11
|
|
53
|
+
|
|
54
|
+
const dfs = avlTree.DFS('in', 'node');
|
|
55
|
+
dfs[0].id // 1
|
|
56
|
+
avlTree.perfectlyBalance();
|
|
57
|
+
const bfs = avlTree.BFS('node');
|
|
58
|
+
avlTree.isPerfectlyBalanced() && bfs[0].id // 8
|
|
59
|
+
|
|
60
|
+
avlTree.remove(11, true)[0].deleted?.id // 11
|
|
61
|
+
avlTree.isAVLBalanced(); // true
|
|
62
|
+
node15 && avlTree.getHeight(node15) // 2
|
|
63
|
+
avlTree.remove(1, true)[0].deleted?.id // 1
|
|
64
|
+
avlTree.isAVLBalanced(); // true
|
|
65
|
+
avlTree.getHeight() // 4
|
|
66
|
+
|
|
67
|
+
avlTree.remove(4, true)[0].deleted?.id // 4
|
|
68
|
+
avlTree.isAVLBalanced(); // true
|
|
69
|
+
avlTree.getHeight() // 4
|
|
70
|
+
|
|
71
|
+
avlTree.remove(10, true)[0].deleted?.id // 10
|
|
72
|
+
avlTree.isAVLBalanced(); // true
|
|
73
|
+
avlTree.getHeight() // 3
|
|
74
|
+
|
|
75
|
+
avlTree.remove(15, true)[0].deleted?.id // 15
|
|
76
|
+
avlTree.isAVLBalanced(); // true
|
|
77
|
+
avlTree.getHeight() // 3
|
|
78
|
+
|
|
79
|
+
avlTree.remove(5, true)[0].deleted?.id // 5
|
|
80
|
+
avlTree.isAVLBalanced(); // true
|
|
81
|
+
avlTree.getHeight() // 3
|
|
82
|
+
|
|
83
|
+
avlTree.remove(13, true)[0].deleted?.id // 13
|
|
84
|
+
avlTree.isAVLBalanced(); // true
|
|
85
|
+
avlTree.getHeight() // 3
|
|
86
|
+
|
|
87
|
+
avlTree.remove(3, true)[0].deleted?.id // 3
|
|
88
|
+
avlTree.isAVLBalanced(); // true
|
|
89
|
+
avlTree.getHeight() // 3
|
|
90
|
+
|
|
91
|
+
avlTree.remove(8, true)[0].deleted?.id // 8
|
|
92
|
+
avlTree.isAVLBalanced(); // true
|
|
93
|
+
avlTree.getHeight() // 3
|
|
94
|
+
|
|
95
|
+
avlTree.remove(6, true)[0].deleted?.id // 6
|
|
96
|
+
avlTree.remove(6, true).length // 0
|
|
97
|
+
avlTree.isAVLBalanced(); // true
|
|
98
|
+
avlTree.getHeight() // 2
|
|
99
|
+
|
|
100
|
+
avlTree.remove(7, true)[0].deleted?.id // 7
|
|
101
|
+
avlTree.isAVLBalanced(); // true
|
|
102
|
+
avlTree.getHeight() // 2
|
|
103
|
+
|
|
104
|
+
avlTree.remove(9, true)[0].deleted?.id // 9
|
|
105
|
+
avlTree.isAVLBalanced(); // true
|
|
106
|
+
avlTree.getHeight() // 2
|
|
107
|
+
|
|
108
|
+
avlTree.remove(14, true)[0].deleted?.id // 14
|
|
109
|
+
avlTree.isAVLBalanced(); // true
|
|
110
|
+
avlTree.getHeight() // 1
|
|
111
|
+
|
|
112
|
+
avlTree.isAVLBalanced(); // true
|
|
113
|
+
const lastBFSIds = avlTree.BFS();
|
|
114
|
+
lastBFSIds[0] // 12
|
|
115
|
+
|
|
116
|
+
const lastBFSNodes = avlTree.BFS('node');
|
|
117
|
+
lastBFSNodes[0].id // 12
|
|
75
118
|
```
|
|
76
119
|
#### JS
|
|
77
120
|
```javascript
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
const bst = new BST();
|
|
81
|
-
bst.add(11);
|
|
82
|
-
bst.add(3);
|
|
83
|
-
bst.addMany([15, 1, 8, 13, 16, 2, 6, 9, 12, 14, 4, 7, 10, 5]);
|
|
84
|
-
bst.size === 16; // true
|
|
85
|
-
bst.has(6); // true
|
|
86
|
-
const node6 = bst.get(6);
|
|
87
|
-
bst.getHeight(6) === 2; // true
|
|
88
|
-
bst.getHeight() === 5; // true
|
|
89
|
-
bst.getDepth(6) === 3; // true
|
|
90
|
-
const leftMost = bst.getLeftMost();
|
|
91
|
-
leftMost?.id === 1; // true
|
|
92
|
-
expect(leftMost?.id).toBe(1);
|
|
93
|
-
bst.remove(6);
|
|
94
|
-
bst.get(6); // null
|
|
95
|
-
bst.isAVLBalanced(); // true or false
|
|
96
|
-
const bfsIDs = bst.BFS();
|
|
97
|
-
bfsIDs[0] === 11; // true
|
|
98
|
-
expect(bfsIDs[0]).toBe(11);
|
|
99
|
-
|
|
100
|
-
const objBST = new BST();
|
|
101
|
-
objBST.add(11, {id: 11, keyA: 11});
|
|
102
|
-
objBST.add(3, {id: 3, keyA: 3});
|
|
103
|
-
|
|
104
|
-
objBST.addMany([{id: 15, keyA: 15}, {id: 1, keyA: 1}, {id: 8, keyA: 8},
|
|
105
|
-
{id: 13, keyA: 13}, {id: 16, keyA: 16}, {id: 2, keyA: 2},
|
|
106
|
-
{id: 6, keyA: 6}, {id: 9, keyA: 9}, {id: 12, keyA: 12},
|
|
107
|
-
{id: 14, keyA: 14}, {id: 4, keyA: 4}, {id: 7, keyA: 7},
|
|
108
|
-
{id: 10, keyA: 10}, {id: 5, keyA: 5}]);
|
|
109
|
-
|
|
110
|
-
objBST.remove(11);
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
const avlTree = new AVLTree();
|
|
114
|
-
avlTree.addMany([11, 3, 15, 1, 8, 13, 16, 2, 6, 9, 12, 14, 4, 7, 10, 5])
|
|
115
|
-
avlTree.isAVLBalanced(); // true
|
|
116
|
-
avlTree.remove(10);
|
|
117
|
-
avlTree.isAVLBalanced(); // true
|
|
121
|
+
const {AVLTree} = require('data-structure-typed');
|
|
122
|
+
// /* or if you prefer */ const {AVLTree} = require('avl-tree-typed');
|
|
118
123
|
|
|
119
|
-
|
|
124
|
+
const avlTree = new AVLTree();
|
|
120
125
|
|
|
121
|
-
|
|
126
|
+
const idsOrVals = [11, 3, 15, 1, 8, 13, 16, 2, 6, 9, 12, 14, 4, 7, 10, 5];
|
|
127
|
+
avlTree.addMany(idsOrVals, idsOrVals);
|
|
122
128
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
graph.addVertex('A');
|
|
130
|
-
graph.addVertex('B');
|
|
131
|
-
|
|
132
|
-
graph.hasVertex('A'); // true
|
|
133
|
-
graph.hasVertex('B'); // true
|
|
134
|
-
graph.hasVertex('C'); // false
|
|
135
|
-
|
|
136
|
-
graph.addEdge('A', 'B');
|
|
137
|
-
graph.hasEdge('A', 'B'); // true
|
|
138
|
-
graph.hasEdge('B', 'A'); // false
|
|
139
|
-
|
|
140
|
-
graph.removeEdgeSrcToDest('A', 'B');
|
|
141
|
-
graph.hasEdge('A', 'B'); // false
|
|
142
|
-
|
|
143
|
-
graph.addVertex('C');
|
|
144
|
-
|
|
145
|
-
graph.addEdge('A', 'B');
|
|
146
|
-
graph.addEdge('B', 'C');
|
|
147
|
-
|
|
148
|
-
const topologicalOrderIds = graph.topologicalSort(); // ['A', 'B', 'C']
|
|
149
|
-
```
|
|
129
|
+
const node6 = avlTree.get(6);
|
|
130
|
+
node6 && avlTree.getHeight(node6) // 3
|
|
131
|
+
node6 && avlTree.getDepth(node6) // 1
|
|
132
|
+
const getNodeById = avlTree.get(10, 'id');
|
|
133
|
+
getNodeById?.id // 10
|
|
150
134
|
|
|
151
|
-
|
|
135
|
+
const getMinNodeByRoot = avlTree.getLeftMost();
|
|
136
|
+
getMinNodeByRoot?.id // 1
|
|
152
137
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
138
|
+
const node15 = avlTree.get(15);
|
|
139
|
+
const getMinNodeBySpecificNode = node15 && avlTree.getLeftMost(node15);
|
|
140
|
+
getMinNodeBySpecificNode?.id // 12
|
|
141
|
+
|
|
142
|
+
const subTreeSum = node15 && avlTree.subTreeSum(node15);
|
|
143
|
+
subTreeSum // 70
|
|
144
|
+
|
|
145
|
+
const lesserSum = avlTree.lesserSum(10);
|
|
146
|
+
lesserSum // 45
|
|
147
|
+
|
|
148
|
+
const node11 = avlTree.get(11);
|
|
149
|
+
node11?.id // 11
|
|
150
|
+
|
|
151
|
+
const dfs = avlTree.DFS('in', 'node');
|
|
152
|
+
dfs[0].id // 1
|
|
153
|
+
avlTree.perfectlyBalance();
|
|
154
|
+
const bfs = avlTree.BFS('node');
|
|
155
|
+
avlTree.isPerfectlyBalanced() && bfs[0].id // 8
|
|
156
|
+
|
|
157
|
+
avlTree.remove(11, true)[0].deleted?.id // 11
|
|
158
|
+
avlTree.isAVLBalanced(); // true
|
|
159
|
+
node15 && avlTree.getHeight(node15) // 2
|
|
160
|
+
avlTree.remove(1, true)[0].deleted?.id // 1
|
|
161
|
+
avlTree.isAVLBalanced(); // true
|
|
162
|
+
avlTree.getHeight() // 4
|
|
169
163
|
|
|
170
|
-
|
|
164
|
+
avlTree.remove(4, true)[0].deleted?.id // 4
|
|
165
|
+
avlTree.isAVLBalanced(); // true
|
|
166
|
+
avlTree.getHeight() // 4
|
|
171
167
|
|
|
172
|
-
|
|
168
|
+
avlTree.remove(10, true)[0].deleted?.id // 10
|
|
169
|
+
avlTree.isAVLBalanced(); // true
|
|
170
|
+
avlTree.getHeight() // 3
|
|
173
171
|
|
|
174
|
-
|
|
172
|
+
avlTree.remove(15, true)[0].deleted?.id // 15
|
|
173
|
+
avlTree.isAVLBalanced(); // true
|
|
174
|
+
avlTree.getHeight() // 3
|
|
175
175
|
|
|
176
|
-
|
|
176
|
+
avlTree.remove(5, true)[0].deleted?.id // 5
|
|
177
|
+
avlTree.isAVLBalanced(); // true
|
|
178
|
+
avlTree.getHeight() // 3
|
|
179
|
+
|
|
180
|
+
avlTree.remove(13, true)[0].deleted?.id // 13
|
|
181
|
+
avlTree.isAVLBalanced(); // true
|
|
182
|
+
avlTree.getHeight() // 3
|
|
183
|
+
|
|
184
|
+
avlTree.remove(3, true)[0].deleted?.id // 3
|
|
185
|
+
avlTree.isAVLBalanced(); // true
|
|
186
|
+
avlTree.getHeight() // 3
|
|
187
|
+
|
|
188
|
+
avlTree.remove(8, true)[0].deleted?.id // 8
|
|
189
|
+
avlTree.isAVLBalanced(); // true
|
|
190
|
+
avlTree.getHeight() // 3
|
|
191
|
+
|
|
192
|
+
avlTree.remove(6, true)[0].deleted?.id // 6
|
|
193
|
+
avlTree.remove(6, true).length // 0
|
|
194
|
+
avlTree.isAVLBalanced(); // true
|
|
195
|
+
avlTree.getHeight() // 2
|
|
196
|
+
|
|
197
|
+
avlTree.remove(7, true)[0].deleted?.id // 7
|
|
198
|
+
avlTree.isAVLBalanced(); // true
|
|
199
|
+
avlTree.getHeight() // 2
|
|
200
|
+
|
|
201
|
+
avlTree.remove(9, true)[0].deleted?.id // 9
|
|
202
|
+
avlTree.isAVLBalanced(); // true
|
|
203
|
+
avlTree.getHeight() // 2
|
|
204
|
+
|
|
205
|
+
avlTree.remove(14, true)[0].deleted?.id // 14
|
|
206
|
+
avlTree.isAVLBalanced(); // true
|
|
207
|
+
avlTree.getHeight() // 1
|
|
208
|
+
|
|
209
|
+
avlTree.isAVLBalanced(); // true
|
|
210
|
+
const lastBFSIds = avlTree.BFS();
|
|
211
|
+
lastBFSIds[0] // 12
|
|
212
|
+
|
|
213
|
+
const lastBFSNodes = avlTree.BFS('node');
|
|
214
|
+
lastBFSNodes[0].id // 12
|
|
215
|
+
```
|
|
177
216
|
|
|
178
217
|
|
|
179
218
|
## API docs & Examples
|
|
@@ -182,10 +221,6 @@ import {UndirectedGraph} from 'data-structure-typed';
|
|
|
182
221
|
|
|
183
222
|
[Live Examples](https://data-structure-typed-examples.vercel.app)
|
|
184
223
|
|
|
185
|
-
<a href="https://data-structure-typed-examples.vercel.app" target="_blank">Live Examples</a>
|
|
186
|
-
|
|
187
|
-
[//]: # ([Examples Repository](https://github.com/zrwusa/data-structure-typed-examples))
|
|
188
|
-
|
|
189
224
|
<a href="https://github.com/zrwusa/data-structure-typed-examples" target="_blank">Examples Repository</a>
|
|
190
225
|
|
|
191
226
|
## Data Structures
|
|
@@ -203,10 +238,10 @@ import {UndirectedGraph} from 'data-structure-typed';
|
|
|
203
238
|
<tbody>
|
|
204
239
|
<tr>
|
|
205
240
|
<td>Binary Tree</td>
|
|
206
|
-
<td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""
|
|
207
|
-
</
|
|
208
|
-
<td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""
|
|
209
|
-
</
|
|
241
|
+
<td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""/>
|
|
242
|
+
</td>
|
|
243
|
+
<td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""/>
|
|
244
|
+
</td>
|
|
210
245
|
<td><a href="https://data-structure-typed-docs.vercel.app/classes/BinaryTree.html"><span>Binary Tree</span></a></td>
|
|
211
246
|
<td><img src="https://raw.githubusercontent.com/zrwusa/assets/master/images/data-structure-typed/assets/tick.svg" alt=""></td>
|
|
212
247
|
</tr>
|
|
@@ -653,46 +688,6 @@ import {UndirectedGraph} from 'data-structure-typed';
|
|
|
653
688
|
|
|
654
689
|

|
|
655
690
|
|
|
656
|
-
[//]: # ()
|
|
657
|
-
|
|
658
|
-
[//]: # ()
|
|
659
|
-
[//]: # ()
|
|
660
|
-
|
|
661
|
-
[//]: # ()
|
|
662
|
-
[//]: # ()
|
|
663
|
-
|
|
664
|
-
[//]: # ()
|
|
665
|
-
[//]: # ()
|
|
666
|
-
|
|
667
|
-
[//]: # ()
|
|
668
|
-
[//]: # ()
|
|
669
|
-
|
|
670
|
-
[//]: # ()
|
|
671
|
-
[//]: # ()
|
|
672
|
-
|
|
673
|
-
[//]: # ()
|
|
674
|
-
[//]: # ()
|
|
675
|
-
|
|
676
|
-
[//]: # ()
|
|
677
|
-
[//]: # ()
|
|
678
|
-
|
|
679
|
-
[//]: # ()
|
|
680
|
-
[//]: # ()
|
|
681
|
-
|
|
682
|
-
[//]: # ()
|
|
683
|
-
[//]: # ()
|
|
684
|
-
|
|
685
|
-
[//]: # ()
|
|
686
|
-
[//]: # ()
|
|
687
|
-
|
|
688
|
-
[//]: # ()
|
|
689
|
-
[//]: # ()
|
|
690
|
-
|
|
691
|
-
[//]: # ()
|
|
692
|
-
|
|
693
|
-
[//]: # ()
|
|
694
|
-
|
|
695
|
-
[//]: # ()
|
|
696
691
|
|
|
697
692
|
|
|
698
693
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "avl-tree-typed",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.20.0",
|
|
4
4
|
"description": "AVLTree(Adelson-Velsky and Landis Tree). Javascript & Typescript Data Structure.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"typescript": "^4.9.5"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"data-structure-typed": "^1.
|
|
56
|
+
"data-structure-typed": "^1.20.0",
|
|
57
57
|
"zod": "^3.22.2"
|
|
58
58
|
}
|
|
59
59
|
}
|