data-structure-typed 1.34.7 → 1.34.8
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/CHANGELOG.md +1 -1
- package/dist/data-structures/binary-tree/abstract-binary-tree.js +70 -70
- package/dist/data-structures/binary-tree/abstract-binary-tree.js.map +1 -1
- package/dist/data-structures/binary-tree/avl-tree.js +8 -8
- package/dist/data-structures/binary-tree/avl-tree.js.map +1 -1
- package/dist/data-structures/binary-tree/binary-tree.js +4 -4
- package/dist/data-structures/binary-tree/binary-tree.js.map +1 -1
- package/dist/data-structures/binary-tree/bst.js +59 -59
- package/dist/data-structures/binary-tree/bst.js.map +1 -1
- package/dist/data-structures/binary-tree/rb-tree.js +4 -4
- package/dist/data-structures/binary-tree/rb-tree.js.map +1 -1
- package/dist/data-structures/binary-tree/tree-multiset.js +39 -39
- package/dist/data-structures/binary-tree/tree-multiset.js.map +1 -1
- package/dist/data-structures/graph/abstract-graph.js +49 -49
- package/dist/data-structures/graph/abstract-graph.js.map +1 -1
- package/dist/data-structures/graph/directed-graph.js +33 -33
- package/dist/data-structures/graph/directed-graph.js.map +1 -1
- package/dist/data-structures/graph/map-graph.js +4 -4
- package/dist/data-structures/graph/map-graph.js.map +1 -1
- package/dist/data-structures/graph/undirected-graph.js +14 -14
- package/dist/data-structures/graph/undirected-graph.js.map +1 -1
- package/dist/data-structures/tree/tree.js +5 -5
- package/dist/data-structures/tree/tree.js.map +1 -1
- package/lib/data-structures/binary-tree/abstract-binary-tree.d.ts +71 -71
- package/lib/data-structures/binary-tree/abstract-binary-tree.js +110 -110
- package/lib/data-structures/binary-tree/avl-tree.d.ts +10 -10
- package/lib/data-structures/binary-tree/avl-tree.js +13 -13
- package/lib/data-structures/binary-tree/binary-tree.d.ts +6 -6
- package/lib/data-structures/binary-tree/binary-tree.js +7 -7
- package/lib/data-structures/binary-tree/bst.d.ts +34 -34
- package/lib/data-structures/binary-tree/bst.js +80 -80
- package/lib/data-structures/binary-tree/rb-tree.d.ts +3 -3
- package/lib/data-structures/binary-tree/rb-tree.js +4 -4
- package/lib/data-structures/binary-tree/tree-multiset.d.ts +27 -27
- package/lib/data-structures/binary-tree/tree-multiset.js +55 -55
- package/lib/data-structures/graph/abstract-graph.d.ts +60 -60
- package/lib/data-structures/graph/abstract-graph.js +81 -81
- package/lib/data-structures/graph/directed-graph.d.ts +51 -51
- package/lib/data-structures/graph/directed-graph.js +63 -63
- package/lib/data-structures/graph/map-graph.d.ts +13 -13
- package/lib/data-structures/graph/map-graph.js +12 -12
- package/lib/data-structures/graph/undirected-graph.d.ts +30 -30
- package/lib/data-structures/graph/undirected-graph.js +32 -32
- package/lib/data-structures/tree/tree.d.ts +4 -4
- package/lib/data-structures/tree/tree.js +6 -6
- package/lib/interfaces/abstract-binary-tree.d.ts +24 -24
- package/lib/interfaces/abstract-graph.d.ts +13 -13
- package/lib/interfaces/avl-tree.d.ts +3 -3
- package/lib/interfaces/bst.d.ts +8 -8
- package/lib/interfaces/directed-graph.d.ts +5 -5
- package/lib/interfaces/rb-tree.d.ts +2 -2
- package/lib/interfaces/undirected-graph.d.ts +2 -2
- package/lib/types/data-structures/abstract-binary-tree.d.ts +3 -3
- package/lib/types/data-structures/abstract-graph.d.ts +2 -2
- package/lib/types/data-structures/bst.d.ts +2 -2
- package/lib/types/data-structures/tree-multiset.d.ts +1 -1
- package/lib/types/utils/validate-type.d.ts +8 -8
- package/package.json +1 -1
- package/scripts/rename_clear_files.sh +29 -0
- package/src/data-structures/binary-tree/abstract-binary-tree.ts +147 -147
- package/src/data-structures/binary-tree/avl-tree.ts +14 -14
- package/src/data-structures/binary-tree/binary-tree.ts +8 -8
- package/src/data-structures/binary-tree/bst.ts +98 -90
- package/src/data-structures/binary-tree/rb-tree.ts +9 -9
- package/src/data-structures/binary-tree/tree-multiset.ts +62 -62
- package/src/data-structures/graph/abstract-graph.ts +109 -104
- package/src/data-structures/graph/directed-graph.ts +77 -77
- package/src/data-structures/graph/map-graph.ts +20 -15
- package/src/data-structures/graph/undirected-graph.ts +39 -39
- package/src/data-structures/tree/tree.ts +7 -7
- package/src/interfaces/abstract-binary-tree.ts +24 -24
- package/src/interfaces/abstract-graph.ts +13 -13
- package/src/interfaces/avl-tree.ts +3 -3
- package/src/interfaces/bst.ts +8 -8
- package/src/interfaces/directed-graph.ts +5 -5
- package/src/interfaces/rb-tree.ts +2 -2
- package/src/interfaces/undirected-graph.ts +2 -2
- package/src/types/data-structures/abstract-binary-tree.ts +3 -3
- package/src/types/data-structures/abstract-graph.ts +2 -2
- package/src/types/data-structures/bst.ts +2 -2
- package/src/types/data-structures/tree-multiset.ts +1 -1
- package/src/types/utils/validate-type.ts +10 -10
- package/test/unit/data-structures/binary-tree/avl-tree.test.ts +24 -24
- package/test/unit/data-structures/binary-tree/binary-tree.test.ts +3 -3
- package/test/unit/data-structures/binary-tree/bst.test.ts +71 -71
- package/test/unit/data-structures/binary-tree/overall.test.ts +19 -19
- package/test/unit/data-structures/binary-tree/tree-multiset.test.ts +72 -72
- package/test/unit/data-structures/graph/directed-graph.test.ts +8 -8
- package/test/unit/data-structures/graph/map-graph.test.ts +4 -4
- package/test/unit/data-structures/graph/overall.test.ts +2 -2
- package/test/unit/data-structures/graph/undirected-graph.test.ts +1 -1
- package/test/unit/data-structures/priority-queue/priority-queue.test.ts +0 -1
- package/test/unit/data-structures/tree/tree.test.ts +2 -2
- package/umd/bundle.min.js +1 -1
- package/umd/bundle.min.js.map +1 -1
|
@@ -56,8 +56,8 @@ var utils_1 = require("../../utils");
|
|
|
56
56
|
var abstract_graph_1 = require("./abstract-graph");
|
|
57
57
|
var DirectedVertex = (function (_super) {
|
|
58
58
|
__extends(DirectedVertex, _super);
|
|
59
|
-
function DirectedVertex(
|
|
60
|
-
return _super.call(this,
|
|
59
|
+
function DirectedVertex(key, val) {
|
|
60
|
+
return _super.call(this, key, val) || this;
|
|
61
61
|
}
|
|
62
62
|
return DirectedVertex;
|
|
63
63
|
}(abstract_graph_1.AbstractVertex));
|
|
@@ -115,40 +115,40 @@ var DirectedGraph = (function (_super) {
|
|
|
115
115
|
enumerable: false,
|
|
116
116
|
configurable: true
|
|
117
117
|
});
|
|
118
|
-
DirectedGraph.prototype.createVertex = function (
|
|
119
|
-
return new DirectedVertex(
|
|
118
|
+
DirectedGraph.prototype.createVertex = function (key, val) {
|
|
119
|
+
return new DirectedVertex(key, val !== null && val !== void 0 ? val : key);
|
|
120
120
|
};
|
|
121
121
|
DirectedGraph.prototype.createEdge = function (src, dest, weight, val) {
|
|
122
122
|
return new DirectedEdge(src, dest, weight !== null && weight !== void 0 ? weight : 1, val);
|
|
123
123
|
};
|
|
124
|
-
DirectedGraph.prototype.getEdge = function (
|
|
124
|
+
DirectedGraph.prototype.getEdge = function (srcOrKey, destOrKey) {
|
|
125
125
|
var edges = [];
|
|
126
|
-
if (
|
|
127
|
-
var src = this._getVertex(
|
|
128
|
-
var dest_1 = this._getVertex(
|
|
126
|
+
if (srcOrKey !== null && destOrKey !== null) {
|
|
127
|
+
var src = this._getVertex(srcOrKey);
|
|
128
|
+
var dest_1 = this._getVertex(destOrKey);
|
|
129
129
|
if (src && dest_1) {
|
|
130
130
|
var srcOutEdges = this._outEdgeMap.get(src);
|
|
131
131
|
if (srcOutEdges) {
|
|
132
|
-
edges = srcOutEdges.filter(function (edge) { return edge.dest === dest_1.
|
|
132
|
+
edges = srcOutEdges.filter(function (edge) { return edge.dest === dest_1.key; });
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
return edges[0] || null;
|
|
137
137
|
};
|
|
138
|
-
DirectedGraph.prototype.removeEdgeSrcToDest = function (
|
|
139
|
-
var src = this._getVertex(
|
|
140
|
-
var dest = this._getVertex(
|
|
138
|
+
DirectedGraph.prototype.removeEdgeSrcToDest = function (srcOrKey, destOrKey) {
|
|
139
|
+
var src = this._getVertex(srcOrKey);
|
|
140
|
+
var dest = this._getVertex(destOrKey);
|
|
141
141
|
var removed = null;
|
|
142
142
|
if (!src || !dest) {
|
|
143
143
|
return null;
|
|
144
144
|
}
|
|
145
145
|
var srcOutEdges = this._outEdgeMap.get(src);
|
|
146
146
|
if (srcOutEdges) {
|
|
147
|
-
(0, utils_1.arrayRemove)(srcOutEdges, function (edge) { return edge.dest === dest.
|
|
147
|
+
(0, utils_1.arrayRemove)(srcOutEdges, function (edge) { return edge.dest === dest.key; });
|
|
148
148
|
}
|
|
149
149
|
var destInEdges = this._inEdgeMap.get(dest);
|
|
150
150
|
if (destInEdges) {
|
|
151
|
-
removed = (0, utils_1.arrayRemove)(destInEdges, function (edge) { return edge.src === src.
|
|
151
|
+
removed = (0, utils_1.arrayRemove)(destInEdges, function (edge) { return edge.src === src.key; })[0] || null;
|
|
152
152
|
}
|
|
153
153
|
return removed;
|
|
154
154
|
};
|
|
@@ -159,11 +159,11 @@ var DirectedGraph = (function (_super) {
|
|
|
159
159
|
if (src && dest) {
|
|
160
160
|
var srcOutEdges = this._outEdgeMap.get(src);
|
|
161
161
|
if (srcOutEdges && srcOutEdges.length > 0) {
|
|
162
|
-
(0, utils_1.arrayRemove)(srcOutEdges, function (edge) { return edge.src === src.
|
|
162
|
+
(0, utils_1.arrayRemove)(srcOutEdges, function (edge) { return edge.src === src.key; });
|
|
163
163
|
}
|
|
164
164
|
var destInEdges = this._inEdgeMap.get(dest);
|
|
165
165
|
if (destInEdges && destInEdges.length > 0) {
|
|
166
|
-
removed = (0, utils_1.arrayRemove)(destInEdges, function (edge) { return edge.dest === dest.
|
|
166
|
+
removed = (0, utils_1.arrayRemove)(destInEdges, function (edge) { return edge.dest === dest.key; })[0];
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
169
|
return removed;
|
|
@@ -178,31 +178,31 @@ var DirectedGraph = (function (_super) {
|
|
|
178
178
|
}
|
|
179
179
|
return removed;
|
|
180
180
|
};
|
|
181
|
-
DirectedGraph.prototype.incomingEdgesOf = function (
|
|
182
|
-
var target = this._getVertex(
|
|
181
|
+
DirectedGraph.prototype.incomingEdgesOf = function (vertexOrKey) {
|
|
182
|
+
var target = this._getVertex(vertexOrKey);
|
|
183
183
|
if (target) {
|
|
184
184
|
return this.inEdgeMap.get(target) || [];
|
|
185
185
|
}
|
|
186
186
|
return [];
|
|
187
187
|
};
|
|
188
|
-
DirectedGraph.prototype.outgoingEdgesOf = function (
|
|
189
|
-
var target = this._getVertex(
|
|
188
|
+
DirectedGraph.prototype.outgoingEdgesOf = function (vertexOrKey) {
|
|
189
|
+
var target = this._getVertex(vertexOrKey);
|
|
190
190
|
if (target) {
|
|
191
191
|
return this._outEdgeMap.get(target) || [];
|
|
192
192
|
}
|
|
193
193
|
return [];
|
|
194
194
|
};
|
|
195
|
-
DirectedGraph.prototype.degreeOf = function (
|
|
196
|
-
return this.outDegreeOf(
|
|
195
|
+
DirectedGraph.prototype.degreeOf = function (vertexOrKey) {
|
|
196
|
+
return this.outDegreeOf(vertexOrKey) + this.inDegreeOf(vertexOrKey);
|
|
197
197
|
};
|
|
198
|
-
DirectedGraph.prototype.inDegreeOf = function (
|
|
199
|
-
return this.incomingEdgesOf(
|
|
198
|
+
DirectedGraph.prototype.inDegreeOf = function (vertexOrKey) {
|
|
199
|
+
return this.incomingEdgesOf(vertexOrKey).length;
|
|
200
200
|
};
|
|
201
|
-
DirectedGraph.prototype.outDegreeOf = function (
|
|
202
|
-
return this.outgoingEdgesOf(
|
|
201
|
+
DirectedGraph.prototype.outDegreeOf = function (vertexOrKey) {
|
|
202
|
+
return this.outgoingEdgesOf(vertexOrKey).length;
|
|
203
203
|
};
|
|
204
|
-
DirectedGraph.prototype.edgesOf = function (
|
|
205
|
-
return __spreadArray(__spreadArray([], __read(this.outgoingEdgesOf(
|
|
204
|
+
DirectedGraph.prototype.edgesOf = function (vertexOrKey) {
|
|
205
|
+
return __spreadArray(__spreadArray([], __read(this.outgoingEdgesOf(vertexOrKey)), false), __read(this.incomingEdgesOf(vertexOrKey)), false);
|
|
206
206
|
};
|
|
207
207
|
DirectedGraph.prototype.getEdgeSrc = function (e) {
|
|
208
208
|
return this._getVertex(e.src);
|
|
@@ -238,7 +238,7 @@ var DirectedGraph = (function (_super) {
|
|
|
238
238
|
DirectedGraph.prototype.topologicalSort = function (propertyName) {
|
|
239
239
|
var e_2, _a, e_3, _b;
|
|
240
240
|
var _this = this;
|
|
241
|
-
propertyName = propertyName !== null && propertyName !== void 0 ? propertyName : '
|
|
241
|
+
propertyName = propertyName !== null && propertyName !== void 0 ? propertyName : 'key';
|
|
242
242
|
var statusMap = new Map();
|
|
243
243
|
try {
|
|
244
244
|
for (var _c = __values(this.vertices), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
@@ -298,8 +298,8 @@ var DirectedGraph = (function (_super) {
|
|
|
298
298
|
}
|
|
299
299
|
if (hasCycle)
|
|
300
300
|
return null;
|
|
301
|
-
if (propertyName === '
|
|
302
|
-
sorted = sorted.map(function (vertex) { return (vertex instanceof DirectedVertex ? vertex.
|
|
301
|
+
if (propertyName === 'key')
|
|
302
|
+
sorted = sorted.map(function (vertex) { return (vertex instanceof DirectedVertex ? vertex.key : vertex); });
|
|
303
303
|
return sorted.reverse();
|
|
304
304
|
};
|
|
305
305
|
DirectedGraph.prototype.edgeSet = function () {
|
|
@@ -309,10 +309,10 @@ var DirectedGraph = (function (_super) {
|
|
|
309
309
|
});
|
|
310
310
|
return edges;
|
|
311
311
|
};
|
|
312
|
-
DirectedGraph.prototype.getNeighbors = function (
|
|
312
|
+
DirectedGraph.prototype.getNeighbors = function (vertexOrKey) {
|
|
313
313
|
var e_5, _a;
|
|
314
314
|
var neighbors = [];
|
|
315
|
-
var vertex = this._getVertex(
|
|
315
|
+
var vertex = this._getVertex(vertexOrKey);
|
|
316
316
|
if (vertex) {
|
|
317
317
|
var outEdges = this.outgoingEdgesOf(vertex);
|
|
318
318
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directed-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/directed-graph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,qCAAwC;AACxC,mDAA6E;AAI7E;IAA6C,kCAAiB;IAQ5D,wBAAY,
|
|
1
|
+
{"version":3,"file":"directed-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/directed-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,8 +19,8 @@ exports.MapGraph = exports.MapEdge = exports.MapVertex = void 0;
|
|
|
19
19
|
var directed_graph_1 = require("./directed-graph");
|
|
20
20
|
var MapVertex = (function (_super) {
|
|
21
21
|
__extends(MapVertex, _super);
|
|
22
|
-
function MapVertex(
|
|
23
|
-
var _this = _super.call(this,
|
|
22
|
+
function MapVertex(key, lat, long, val) {
|
|
23
|
+
var _this = _super.call(this, key, val) || this;
|
|
24
24
|
_this._lat = lat;
|
|
25
25
|
_this._long = long;
|
|
26
26
|
return _this;
|
|
@@ -85,10 +85,10 @@ var MapGraph = (function (_super) {
|
|
|
85
85
|
enumerable: false,
|
|
86
86
|
configurable: true
|
|
87
87
|
});
|
|
88
|
-
MapGraph.prototype.createVertex = function (
|
|
88
|
+
MapGraph.prototype.createVertex = function (key, val, lat, long) {
|
|
89
89
|
if (lat === void 0) { lat = this.origin[0]; }
|
|
90
90
|
if (long === void 0) { long = this.origin[1]; }
|
|
91
|
-
return new MapVertex(
|
|
91
|
+
return new MapVertex(key, lat, long, val);
|
|
92
92
|
};
|
|
93
93
|
MapGraph.prototype.createEdge = function (src, dest, weight, val) {
|
|
94
94
|
return new MapEdge(src, dest, weight, val);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/map-graph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,mDAA6E;AAE7E;IAAwC,6BAAiB;IAavD,mBAAY,
|
|
1
|
+
{"version":3,"file":"map-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/map-graph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,mDAA6E;AAE7E;IAAwC,6BAAiB;IAavD,mBAAY,GAAc,EAAE,GAAW,EAAE,IAAY,EAAE,GAAO;QAA9D,YACE,kBAAM,GAAG,EAAE,GAAG,CAAC,SAGhB;QAFC,KAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;IACpB,CAAC;IAID,sBAAI,0BAAG;aAAP;YACE,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;aAED,UAAQ,KAAa;YACnB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACpB,CAAC;;;OAJA;IAQD,sBAAI,2BAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAED,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAJA;IAKH,gBAAC;AAAD,CAAC,AAtCD,CAAwC,+BAAc,GAsCrD;AAtCY,8BAAS;AAwCtB;IAAsC,2BAAe;IAWnD,iBAAY,GAAc,EAAE,IAAe,EAAE,MAAe,EAAE,GAAO;eACnE,kBAAM,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC;IAC/B,CAAC;IACH,cAAC;AAAD,CAAC,AAdD,CAAsC,6BAAY,GAcjD;AAdY,0BAAO;AAgBpB;IAAsG,4BAGrG;IAUC,kBAAY,MAA0B,EAAE,WAAgC;QAAxE,YACE,iBAAO,SAGR;QAEO,aAAO,GAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAJ3C,KAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;;IAClC,CAAC;IAID,sBAAI,4BAAM;aAAV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aAED,UAAW,KAAyB;YAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;;;OAJA;IAQD,sBAAI,iCAAW;aAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;aAED,UAAgB,KAAqC;YACnD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;;;OAJA;IAiBQ,+BAAY,GAArB,UACE,GAAc,EACd,GAAc,EACd,GAA4B,EAC5B,IAA6B;QAD7B,oBAAA,EAAA,MAAc,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5B,qBAAA,EAAA,OAAe,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAE7B,OAAO,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,CAAM,CAAC;IACjD,CAAC;IAcQ,6BAAU,GAAnB,UAAoB,GAAc,EAAE,IAAe,EAAE,MAAe,EAAE,GAAc;QAClF,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAM,CAAC;IAClD,CAAC;IACH,eAAC;AAAD,CAAC,AA1ED,CAAsG,8BAAa,GA0ElH;AA1EY,4BAAQ"}
|
|
@@ -56,8 +56,8 @@ var utils_1 = require("../../utils");
|
|
|
56
56
|
var abstract_graph_1 = require("./abstract-graph");
|
|
57
57
|
var UndirectedVertex = (function (_super) {
|
|
58
58
|
__extends(UndirectedVertex, _super);
|
|
59
|
-
function UndirectedVertex(
|
|
60
|
-
return _super.call(this,
|
|
59
|
+
function UndirectedVertex(key, val) {
|
|
60
|
+
return _super.call(this, key, val) || this;
|
|
61
61
|
}
|
|
62
62
|
return UndirectedVertex;
|
|
63
63
|
}(abstract_graph_1.AbstractVertex));
|
|
@@ -96,8 +96,8 @@ var UndirectedGraph = (function (_super) {
|
|
|
96
96
|
enumerable: false,
|
|
97
97
|
configurable: true
|
|
98
98
|
});
|
|
99
|
-
UndirectedGraph.prototype.createVertex = function (
|
|
100
|
-
return new UndirectedVertex(
|
|
99
|
+
UndirectedGraph.prototype.createVertex = function (key, val) {
|
|
100
|
+
return new UndirectedVertex(key, val !== null && val !== void 0 ? val : key);
|
|
101
101
|
};
|
|
102
102
|
UndirectedGraph.prototype.createEdge = function (v1, v2, weight, val) {
|
|
103
103
|
return new UndirectedEdge(v1, v2, weight !== null && weight !== void 0 ? weight : 1, val);
|
|
@@ -109,7 +109,7 @@ var UndirectedGraph = (function (_super) {
|
|
|
109
109
|
var vertex1 = this._getVertex(v1);
|
|
110
110
|
var vertex2_1 = this._getVertex(v2);
|
|
111
111
|
if (vertex1 && vertex2_1) {
|
|
112
|
-
edges = (_a = this._edges.get(vertex1)) === null || _a === void 0 ? void 0 : _a.filter(function (e) { return e.vertices.includes(vertex2_1.
|
|
112
|
+
edges = (_a = this._edges.get(vertex1)) === null || _a === void 0 ? void 0 : _a.filter(function (e) { return e.vertices.includes(vertex2_1.key); });
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
115
|
return edges ? edges[0] || null : null;
|
|
@@ -123,20 +123,20 @@ var UndirectedGraph = (function (_super) {
|
|
|
123
123
|
var v1Edges = this._edges.get(vertex1);
|
|
124
124
|
var removed = null;
|
|
125
125
|
if (v1Edges) {
|
|
126
|
-
removed = (0, utils_1.arrayRemove)(v1Edges, function (e) { return e.vertices.includes(vertex2.
|
|
126
|
+
removed = (0, utils_1.arrayRemove)(v1Edges, function (e) { return e.vertices.includes(vertex2.key); })[0] || null;
|
|
127
127
|
}
|
|
128
128
|
var v2Edges = this._edges.get(vertex2);
|
|
129
129
|
if (v2Edges) {
|
|
130
|
-
(0, utils_1.arrayRemove)(v2Edges, function (e) { return e.vertices.includes(vertex1.
|
|
130
|
+
(0, utils_1.arrayRemove)(v2Edges, function (e) { return e.vertices.includes(vertex1.key); });
|
|
131
131
|
}
|
|
132
132
|
return removed;
|
|
133
133
|
};
|
|
134
134
|
UndirectedGraph.prototype.removeEdge = function (edge) {
|
|
135
135
|
return this.removeEdgeBetween(edge.vertices[0], edge.vertices[1]);
|
|
136
136
|
};
|
|
137
|
-
UndirectedGraph.prototype.degreeOf = function (
|
|
137
|
+
UndirectedGraph.prototype.degreeOf = function (vertexOrKey) {
|
|
138
138
|
var _a;
|
|
139
|
-
var vertex = this._getVertex(
|
|
139
|
+
var vertex = this._getVertex(vertexOrKey);
|
|
140
140
|
if (vertex) {
|
|
141
141
|
return ((_a = this._edges.get(vertex)) === null || _a === void 0 ? void 0 : _a.length) || 0;
|
|
142
142
|
}
|
|
@@ -144,8 +144,8 @@ var UndirectedGraph = (function (_super) {
|
|
|
144
144
|
return 0;
|
|
145
145
|
}
|
|
146
146
|
};
|
|
147
|
-
UndirectedGraph.prototype.edgesOf = function (
|
|
148
|
-
var vertex = this._getVertex(
|
|
147
|
+
UndirectedGraph.prototype.edgesOf = function (vertexOrKey) {
|
|
148
|
+
var vertex = this._getVertex(vertexOrKey);
|
|
149
149
|
if (vertex) {
|
|
150
150
|
return this._edges.get(vertex) || [];
|
|
151
151
|
}
|
|
@@ -162,16 +162,16 @@ var UndirectedGraph = (function (_super) {
|
|
|
162
162
|
});
|
|
163
163
|
return __spreadArray([], __read(edgeSet), false);
|
|
164
164
|
};
|
|
165
|
-
UndirectedGraph.prototype.getNeighbors = function (
|
|
165
|
+
UndirectedGraph.prototype.getNeighbors = function (vertexOrKey) {
|
|
166
166
|
var e_1, _a;
|
|
167
167
|
var neighbors = [];
|
|
168
|
-
var vertex = this._getVertex(
|
|
168
|
+
var vertex = this._getVertex(vertexOrKey);
|
|
169
169
|
if (vertex) {
|
|
170
170
|
var neighborEdges = this.edgesOf(vertex);
|
|
171
171
|
try {
|
|
172
172
|
for (var neighborEdges_1 = __values(neighborEdges), neighborEdges_1_1 = neighborEdges_1.next(); !neighborEdges_1_1.done; neighborEdges_1_1 = neighborEdges_1.next()) {
|
|
173
173
|
var edge = neighborEdges_1_1.value;
|
|
174
|
-
var neighbor = this._getVertex(edge.vertices.filter(function (e) { return e !== vertex.
|
|
174
|
+
var neighbor = this._getVertex(edge.vertices.filter(function (e) { return e !== vertex.key; })[0]);
|
|
175
175
|
if (neighbor) {
|
|
176
176
|
neighbors.push(neighbor);
|
|
177
177
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undirected-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/undirected-graph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,qCAAwC;AACxC,mDAA6E;AAI7E;IAA+C,oCAAiB;IAQ9D,0BAAY,
|
|
1
|
+
{"version":3,"file":"undirected-graph.js","sourceRoot":"","sources":["../../../src/data-structures/graph/undirected-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TreeNode = void 0;
|
|
4
4
|
var TreeNode = (function () {
|
|
5
|
-
function TreeNode(
|
|
6
|
-
this.
|
|
5
|
+
function TreeNode(key, value, children) {
|
|
6
|
+
this._key = key;
|
|
7
7
|
this._value = value || undefined;
|
|
8
8
|
this._children = children || [];
|
|
9
9
|
}
|
|
10
|
-
Object.defineProperty(TreeNode.prototype, "
|
|
10
|
+
Object.defineProperty(TreeNode.prototype, "key", {
|
|
11
11
|
get: function () {
|
|
12
|
-
return this.
|
|
12
|
+
return this._key;
|
|
13
13
|
},
|
|
14
14
|
set: function (value) {
|
|
15
|
-
this.
|
|
15
|
+
this._key = value;
|
|
16
16
|
},
|
|
17
17
|
enumerable: false,
|
|
18
18
|
configurable: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/data-structures/tree/tree.ts"],"names":[],"mappings":";;;AAAA;IACE,kBAAY,
|
|
1
|
+
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/data-structures/tree/tree.ts"],"names":[],"mappings":";;;AAAA;IACE,kBAAY,GAAW,EAAE,KAAS,EAAE,QAAwB;QAC1D,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,SAAS,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;IAClC,CAAC;IAID,sBAAI,yBAAG;aAAP;YACE,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;aAED,UAAQ,KAAa;YACnB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACpB,CAAC;;;OAJA;IAQD,sBAAI,2BAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAoB;YAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAJA;IAQD,sBAAI,8BAAQ;aAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAa,KAAgC;YAC3C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAJA;IAMD,8BAAW,GAAX,UAAY,QAAqC;QAC/C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;SACpB;QACD,IAAI,QAAQ,YAAY,QAAQ,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SAChD;IACH,CAAC;IAED,4BAAS,GAAT;QAEE,IAAM,SAAS,GAAG,IAAI,CAAC;QACvB,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,SAAS,EAAE;YACb,IAAM,KAAG,GAAG,UAAC,IAAiB,EAAE,KAAa;gBAC3C,IAAI,KAAK,GAAG,QAAQ,EAAE;oBACpB,QAAQ,GAAG,KAAK,CAAC;iBAClB;gBACM,IAAA,QAAQ,GAAI,IAAI,SAAR,CAAS;gBACxB,IAAI,QAAQ,EAAE;oBACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;wBACnD,KAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;qBAC7B;iBACF;YACH,CAAC,CAAC;YACF,KAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;SACnB;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACH,eAAC;AAAD,CAAC,AApED,IAoEC;AApEY,4BAAQ"}
|