@raikuxq/alg-ds 1.2.1 → 1.2.4
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 +9 -1
- package/lib/app/algorithms/graph/iterator/AbstractGraphIterator.d.ts +4 -0
- package/lib/app/algorithms/graph/iterator/AbstractGraphIterator.js +5 -1
- package/lib/app/algorithms/graph/searching/hasPath.d.ts +3 -3
- package/lib/app/algorithms/graph/searching/hasPath.js +3 -3
- package/lib/app/algorithms/graph/searching/shortestPath.d.ts +3 -3
- package/lib/app/algorithms/graph/searching/shortestPath.js +3 -3
- package/lib/app/algorithms/graph/transposing/transposeDirectedGraph.js +1 -1
- package/lib/app/algorithms/transpose-matrix.d.ts +1 -0
- package/lib/app/algorithms/transpose-matrix.js +2 -1
- package/lib/app/data-structures/BinaryTree/AbstractBinaryTree/AbstractBinaryTree.d.ts +1 -1
- package/lib/app/data-structures/BinaryTree/AbstractBinaryTree/AbstractBinaryTree.js +1 -2
- package/lib/app/data-structures/BinaryTree/BinarySearchTree/BinarySearchTree.d.ts +6 -1
- package/lib/app/data-structures/BinaryTree/BinarySearchTree/BinarySearchTree.js +10 -5
- package/lib/app/data-structures/BinaryTree/RandBinarySearchTree/RandBinarySearchTree.d.ts +1 -0
- package/lib/app/data-structures/BinaryTree/RandBinarySearchTree/RandBinarySearchTree.js +2 -1
- package/lib/app/data-structures/Graph/AbstractGraph.d.ts +3 -3
- package/lib/app/data-structures/Graph/AbstractGraph.js +3 -3
- package/lib/app/data-structures/Graph/DirectedGraph.d.ts +3 -0
- package/lib/app/data-structures/Graph/DirectedGraph.js +4 -1
- package/lib/app/data-structures/Graph/UndirectedGraph.d.ts +3 -0
- package/lib/app/data-structures/Graph/UndirectedGraph.js +4 -1
- package/lib/app/data-structures/Graph/_helpers/createGraph.js +2 -2
- package/lib/app/data-structures/Graph/_helpers/createGraphFromMatrix.js +2 -2
- package/lib/app/data-structures/Graph/_helpers/generateRandomGraph.js +6 -6
- package/lib/app/data-structures/HashTable/HashTable.d.ts +4 -4
- package/lib/app/data-structures/HashTable/HashTable.js +6 -6
- package/lib/app/data-structures/LinkedList/AbstractLinkedList/AbstractLinkedList.d.ts +17 -8
- package/lib/app/data-structures/LinkedList/AbstractLinkedList/AbstractLinkedList.js +22 -16
- package/lib/app/data-structures/LinkedList/DoubleLinkedList/DoubleLinkedList.d.ts +1 -7
- package/lib/app/data-structures/LinkedList/DoubleLinkedList/DoubleLinkedList.js +1 -54
- package/lib/app/data-structures/LinkedList/DoubleLinkedList/IterableDoubleLinkedList.d.ts +18 -0
- package/lib/app/data-structures/LinkedList/DoubleLinkedList/IterableDoubleLinkedList.js +86 -0
- package/lib/app/data-structures/LinkedList/SingleLinkedList/IterableSingleLinkedList.d.ts +18 -0
- package/lib/app/data-structures/LinkedList/SingleLinkedList/IterableSingleLinkedList.js +68 -0
- package/lib/app/data-structures/LinkedList/SingleLinkedList/SingleLinkedList.d.ts +1 -7
- package/lib/app/data-structures/LinkedList/SingleLinkedList/SingleLinkedList.js +1 -36
- package/lib/app/data-structures/LinkedList/_helpers/createLinkedList.d.ts +1 -1
- package/lib/app/data-structures/LinkedList/_helpers/createLinkedList.js +24 -9
- package/lib/app/data-structures/LoopedArray/LoopedArray.d.ts +3 -0
- package/lib/app/data-structures/LoopedArray/LoopedArray.js +4 -8
- package/lib/app/data-structures/Queue/Queue.d.ts +3 -3
- package/lib/app/data-structures/Queue/Queue.js +3 -3
- package/lib/app/data-structures/Stack/Stack.d.ts +3 -3
- package/lib/app/data-structures/Stack/Stack.js +3 -3
- package/lib/app/types/EnumGraphType.d.ts +2 -2
- package/lib/app/types/EnumGraphType.js +2 -2
- package/lib/app/types/EnumRandomGenerationFormat.d.ts +2 -2
- package/lib/app/types/EnumRandomGenerationFormat.js +2 -2
- package/lib/app/types/EnumSortType.d.ts +5 -5
- package/lib/app/types/EnumSortType.js +5 -5
- package/lib/app/types/EnumTreeTraversalType.d.ts +3 -3
- package/lib/app/types/EnumTreeTraversalType.js +4 -4
- package/lib/app/utils.d.ts +2 -2
- package/lib/app/utils.js +5 -4
- package/lib/exports/data-structures.d.ts +3 -1
- package/lib/exports/data-structures.js +6 -2
- package/lib/exports.d.ts +3 -1
- package/lib/exports.js +6 -2
- package/package.json +26 -1
package/README.md
CHANGED
|
@@ -94,11 +94,19 @@ Implements [ILinearStorageRA](src/app/types/ILinearStorageRA.ts) interface.
|
|
|
94
94
|
[SingleLinkedList](src/app/data-structures/LinkedList/SingleLinkedList/SingleLinkedList.ts)
|
|
95
95
|
[ [ tests ] ](test/unit/data-structures/linked-list/linked-list.test.ts)
|
|
96
96
|
— Extends abstract linked list with implementation of one-way linking.
|
|
97
|
-
Implements [IIterable](src/app/types/IIterable.ts) interface.
|
|
98
97
|
|
|
99
98
|
[DoubleLinkedList](src/app/data-structures/LinkedList/DoubleLinkedList/DoubleLinkedList.ts)
|
|
100
99
|
[ [ tests ] ](test/unit/data-structures/linked-list/linked-list.test.ts)
|
|
101
100
|
— Extends abstract linked list with implementation of two-way linking.
|
|
101
|
+
|
|
102
|
+
[IterableSingleLinkedList](src/app/data-structures/LinkedList/SingleLinkedList/IterableSingleLinkedList.ts)
|
|
103
|
+
[ [ tests ] ](test/unit/data-structures/linked-list/linked-list-iterable.test.ts)
|
|
104
|
+
— Extends single linked list with iterator implementation.
|
|
105
|
+
Implements [IIterable](src/app/types/IIterable.ts) interface.
|
|
106
|
+
|
|
107
|
+
[IterableDoubleLinkedList](src/app/data-structures/LinkedList/DoubleLinkedList/IterableDoubleLinkedList.ts)
|
|
108
|
+
[ [ tests ] ](test/unit/data-structures/linked-list/linked-list-iterable.test.ts)
|
|
109
|
+
— Extends double linked list with implementation of two-way linking.
|
|
102
110
|
Implements [IBiDirectIterable](src/app/types/IBiDirectIterable.ts) interface.
|
|
103
111
|
|
|
104
112
|
|
|
@@ -14,6 +14,7 @@ export default abstract class AbstractGraphIterator<T> implements IGraphIterator
|
|
|
14
14
|
protected abstract hasNextImpl(): boolean;
|
|
15
15
|
/**
|
|
16
16
|
* @inheritDoc
|
|
17
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
17
18
|
*/
|
|
18
19
|
initIterator(from: T): void;
|
|
19
20
|
/**
|
|
@@ -22,14 +23,17 @@ export default abstract class AbstractGraphIterator<T> implements IGraphIterator
|
|
|
22
23
|
hasNext(): boolean;
|
|
23
24
|
/**
|
|
24
25
|
* @inheritDoc
|
|
26
|
+
* @throws {IllegalStateException} when next element does not exist
|
|
25
27
|
*/
|
|
26
28
|
next(): T;
|
|
27
29
|
/**
|
|
28
30
|
* @inheritDoc
|
|
31
|
+
* @throws {IllegalStateException} when current element does not exist
|
|
29
32
|
*/
|
|
30
33
|
current(): T;
|
|
31
34
|
/**
|
|
32
35
|
* @inheritDoc
|
|
36
|
+
* @throws {IllegalStateException} when there is no path between given vertices
|
|
33
37
|
*/
|
|
34
38
|
getPath(from: T, to: T): Array<T>;
|
|
35
39
|
}
|
|
@@ -20,6 +20,7 @@ var AbstractGraphIterator = /** @class */ (function () {
|
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
22
|
* @inheritDoc
|
|
23
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
23
24
|
*/
|
|
24
25
|
AbstractGraphIterator.prototype.initIterator = function (from) {
|
|
25
26
|
if (!this.graph.hasVertex(from)) {
|
|
@@ -35,6 +36,7 @@ var AbstractGraphIterator = /** @class */ (function () {
|
|
|
35
36
|
};
|
|
36
37
|
/**
|
|
37
38
|
* @inheritDoc
|
|
39
|
+
* @throws {IllegalStateException} when next element does not exist
|
|
38
40
|
*/
|
|
39
41
|
AbstractGraphIterator.prototype.next = function () {
|
|
40
42
|
if (!this.hasNext()) {
|
|
@@ -44,6 +46,7 @@ var AbstractGraphIterator = /** @class */ (function () {
|
|
|
44
46
|
};
|
|
45
47
|
/**
|
|
46
48
|
* @inheritDoc
|
|
49
|
+
* @throws {IllegalStateException} when current element does not exist
|
|
47
50
|
*/
|
|
48
51
|
AbstractGraphIterator.prototype.current = function () {
|
|
49
52
|
try {
|
|
@@ -55,6 +58,7 @@ var AbstractGraphIterator = /** @class */ (function () {
|
|
|
55
58
|
};
|
|
56
59
|
/**
|
|
57
60
|
* @inheritDoc
|
|
61
|
+
* @throws {IllegalStateException} when there is no path between given vertices
|
|
58
62
|
*/
|
|
59
63
|
AbstractGraphIterator.prototype.getPath = function (from, to) {
|
|
60
64
|
var path = new Array();
|
|
@@ -80,4 +84,4 @@ var AbstractGraphIterator = /** @class */ (function () {
|
|
|
80
84
|
return AbstractGraphIterator;
|
|
81
85
|
}());
|
|
82
86
|
exports.default = AbstractGraphIterator;
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RHcmFwaEl0ZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9hbGdvcml0aG1zL2dyYXBoL2l0ZXJhdG9yL0Fic3RyYWN0R3JhcGhJdGVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFFQSwrRUFBMEU7QUFDMUUsd0ZBQW1GO0FBRW5GO0lBTUU7O09BRUc7SUFDSCwrQkFBc0IsS0FBZ0I7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBT0Q7OztPQUdHO0lBQ0ksNENBQVksR0FBbkIsVUFBb0IsSUFBTztRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0IsTUFBTSxJQUFJLDZCQUFtQixDQUFDLDZCQUE2QixDQUFDLENBQUM7U0FDOUQ7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksdUNBQU8sR0FBZDtRQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxvQ0FBSSxHQUFYO1FBQ0UsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNuQixNQUFNLElBQUksK0JBQXFCLENBQUMsNkJBQTZCLENBQUMsQ0FBQztTQUNoRTtRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7O09BR0c7SUFDSSx1Q0FBTyxHQUFkO1FBQ0UsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzNCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixNQUFNLElBQUksK0JBQXFCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSSx1Q0FBTyxHQUFkLFVBQWUsSUFBTyxFQUFFLEVBQUs7UUFDM0IsSUFBTSxJQUFJLEdBQWEsSUFBSSxLQUFLLEVBQUssQ0FBQztRQUN0QyxJQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUV6QyxJQUFJLGdCQUFnQixFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDbkI7YUFBTTtZQUNMLE9BQU8sYUFBYSxFQUFFO2dCQUNwQixJQUFJLGFBQWEsS0FBSyxJQUFJLEVBQUU7b0JBQzFCLE1BQU07aUJBQ1A7Z0JBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDekIsYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ2pEO1lBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDckIsTUFBTSxJQUFJLCtCQUFxQixDQUFDLHdCQUF3QixDQUFDLENBQUM7YUFDM0Q7WUFFRCx1QkFBUSxJQUFJLEdBQUssSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFFLEVBQUUsR0FBRTtTQUN0QztJQUNILENBQUM7SUFDSCw0QkFBQztBQUFELENBQUMsQUExRkQsSUEwRkMifQ==
|
|
@@ -2,8 +2,8 @@ import IGraph from "../../../types/IGraph";
|
|
|
2
2
|
import IGraphIterationStrategy from "../../../types/IGraphIterationStrategy";
|
|
3
3
|
/**
|
|
4
4
|
* Check if graph has a path between two vertices
|
|
5
|
-
* @throws when start vertex was not found
|
|
6
|
-
* @throws when end vertex was not found
|
|
7
|
-
* @throws when there is no path between two vertices
|
|
5
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
6
|
+
* @throws {IsNotFoundException} when end vertex was not found
|
|
7
|
+
* @throws {IllegalStateException} when there is no path between two vertices
|
|
8
8
|
*/
|
|
9
9
|
export declare const hasPath: <T>(graph: IGraph<T>, from: T, to: T, strategy: IGraphIterationStrategy<T>) => boolean;
|
|
@@ -4,9 +4,9 @@ exports.hasPath = void 0;
|
|
|
4
4
|
var IsNotFoundException_1 = require("../../../exceptions/IsNotFoundException");
|
|
5
5
|
/**
|
|
6
6
|
* Check if graph has a path between two vertices
|
|
7
|
-
* @throws when start vertex was not found
|
|
8
|
-
* @throws when end vertex was not found
|
|
9
|
-
* @throws when there is no path between two vertices
|
|
7
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
8
|
+
* @throws {IsNotFoundException} when end vertex was not found
|
|
9
|
+
* @throws {IllegalStateException} when there is no path between two vertices
|
|
10
10
|
*/
|
|
11
11
|
exports.hasPath = function (graph, from, to, strategy) {
|
|
12
12
|
/* Validate */
|
|
@@ -2,8 +2,8 @@ import IGraph from "../../../types/IGraph";
|
|
|
2
2
|
import IGraphIterationStrategy from "../../../types/IGraphIterationStrategy";
|
|
3
3
|
/**
|
|
4
4
|
* Find the shortest path between two vertices
|
|
5
|
-
* @throws when start vertex was not found
|
|
6
|
-
* @throws when end vertex was not found
|
|
7
|
-
* @throws when there is no path between two vertices
|
|
5
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
6
|
+
* @throws {IsNotFoundException} when end vertex was not found
|
|
7
|
+
* @throws {IllegalStateException} when there is no path between two vertices
|
|
8
8
|
*/
|
|
9
9
|
export declare const shortestPath: <T>(graph: IGraph<T>, from: T, to: T, strategy: IGraphIterationStrategy<T>) => T[];
|
|
@@ -4,9 +4,9 @@ exports.shortestPath = void 0;
|
|
|
4
4
|
var IsNotFoundException_1 = require("../../../exceptions/IsNotFoundException");
|
|
5
5
|
/**
|
|
6
6
|
* Find the shortest path between two vertices
|
|
7
|
-
* @throws when start vertex was not found
|
|
8
|
-
* @throws when end vertex was not found
|
|
9
|
-
* @throws when there is no path between two vertices
|
|
7
|
+
* @throws {IsNotFoundException} when start vertex was not found
|
|
8
|
+
* @throws {IsNotFoundException} when end vertex was not found
|
|
9
|
+
* @throws {IllegalStateException} when there is no path between two vertices
|
|
10
10
|
*/
|
|
11
11
|
exports.shortestPath = function (graph, from, to, strategy) {
|
|
12
12
|
/* Validate */
|
|
@@ -9,6 +9,6 @@ exports.transposeDirectedGraph = function (sourceGraph) {
|
|
|
9
9
|
var verticesList = sourceGraph.vertices();
|
|
10
10
|
var matrix = presenterAdjacencyMatrix_1.presenterAdjacencyMatrix(sourceGraph);
|
|
11
11
|
var transposedMatrix = transpose_matrix_1.transposeMatrix(matrix);
|
|
12
|
-
return createGraphFromMatrix_1.createGraphFromMatrix(transposedMatrix, verticesList, EnumGraphType_1.EnumGraphType.
|
|
12
|
+
return createGraphFromMatrix_1.createGraphFromMatrix(transposedMatrix, verticesList, EnumGraphType_1.EnumGraphType.DIRECTED);
|
|
13
13
|
};
|
|
14
14
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3NlRGlyZWN0ZWRHcmFwaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvYWxnb3JpdGhtcy9ncmFwaC90cmFuc3Bvc2luZy90cmFuc3Bvc2VEaXJlY3RlZEdyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHVHQUFzRztBQUN0Ryw4REFBNkQ7QUFDN0Qsa0ZBQWlGO0FBQ2pGLDJEQUF5RDtBQUU1QyxRQUFBLHNCQUFzQixHQUFHLFVBQ3BDLFdBQXNCO0lBRXRCLElBQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QyxJQUFNLE1BQU0sR0FBRyxtREFBd0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyRCxJQUFNLGdCQUFnQixHQUFHLGtDQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFakQsT0FBTyw2Q0FBcUIsQ0FDMUIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWiw2QkFBYSxDQUFDLFFBQVEsQ0FDdkIsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
|
|
@@ -5,6 +5,7 @@ var IllegalArgumentException_1 = require("../exceptions/base/IllegalArgumentExce
|
|
|
5
5
|
var utils_1 = require("../utils");
|
|
6
6
|
/**
|
|
7
7
|
* Will flips a matrix over its diagonal
|
|
8
|
+
* @throws {IllegalArgumentException} when array is not a matrix
|
|
8
9
|
*/
|
|
9
10
|
exports.transposeMatrix = function (matrix) {
|
|
10
11
|
if (!utils_1.checkIsArrayMatrix(matrix)) {
|
|
@@ -15,4 +16,4 @@ exports.transposeMatrix = function (matrix) {
|
|
|
15
16
|
return acc;
|
|
16
17
|
}, new Array(matrix.length));
|
|
17
18
|
};
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3NlLW1hdHJpeC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvYWxnb3JpdGhtcy90cmFuc3Bvc2UtbWF0cml4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHdGQUFtRjtBQUNuRixrQ0FBOEM7QUFFOUM7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcsVUFBQyxNQUF1QjtJQUNyRCxJQUFJLENBQUMsMEJBQWtCLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxJQUFJLGtDQUF3QixDQUFDLDZCQUE2QixDQUFDLENBQUM7S0FDbkU7SUFFRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLFlBQVk7UUFDOUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBQyxNQUFNLElBQUssT0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQXBCLENBQW9CLENBQUMsQ0FBQztRQUNqRSxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUMvQixDQUFDLENBQUMifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import IBinaryTree from "../../../types/IBinaryTree";
|
|
2
|
-
import { FnCompareTwo } from "../../../types/FnCompareTwo";
|
|
3
2
|
import AbstractBinaryNode from "./AbstractBinaryNode";
|
|
3
|
+
import { FnCompareTwo } from "../../../types/FnCompareTwo";
|
|
4
4
|
import { EnumTreeTraversalType } from "../../../types/EnumTreeTraversalType";
|
|
5
5
|
/**
|
|
6
6
|
*
|
|
@@ -19,7 +19,6 @@ var AbstractBinaryTree = /** @class */ (function () {
|
|
|
19
19
|
this.compare = function (a, b) { return a > b; };
|
|
20
20
|
if (fnCompare) {
|
|
21
21
|
this.compare = fnCompare;
|
|
22
|
-
console.log(this.compare);
|
|
23
22
|
}
|
|
24
23
|
this._head = null;
|
|
25
24
|
this._length = 0;
|
|
@@ -33,4 +32,4 @@ var AbstractBinaryTree = /** @class */ (function () {
|
|
|
33
32
|
return AbstractBinaryTree;
|
|
34
33
|
}());
|
|
35
34
|
exports.default = AbstractBinaryTree;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RCaW5hcnlUcmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9kYXRhLXN0cnVjdHVyZXMvQmluYXJ5VHJlZS9BYnN0cmFjdEJpbmFyeVRyZWUvQWJzdHJhY3RCaW5hcnlUcmVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBS0E7O0dBRUc7QUFDSDtJQVdFOzs7O09BSUc7SUFDSCw0QkFBc0IsU0FBMkI7UUFmakQ7Ozs7O1dBS0c7UUFDTyxZQUFPLEdBQW9CLFVBQUMsQ0FBSSxFQUFFLENBQUksSUFBSyxPQUFBLENBQUMsR0FBRyxDQUFDLEVBQUwsQ0FBSyxDQUFDO1FBVXpELElBQUksU0FBUyxFQUFFO1lBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7U0FDMUI7UUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxtQ0FBTSxHQUFiO1FBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUF5Q0gseUJBQUM7QUFBRCxDQUFDLEFBdEVELElBc0VDIn0=
|
|
@@ -17,7 +17,7 @@ export default class BinarySearchTree<T> extends AbstractBinaryTree<T> {
|
|
|
17
17
|
constructor(fnCompare?: FnCompareTwo<T>);
|
|
18
18
|
/**
|
|
19
19
|
*
|
|
20
|
-
* @throws when
|
|
20
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
21
21
|
*/
|
|
22
22
|
protected checkIsEmpty(): void;
|
|
23
23
|
/**
|
|
@@ -37,14 +37,17 @@ export default class BinarySearchTree<T> extends AbstractBinaryTree<T> {
|
|
|
37
37
|
protected join(treeLeft: BinarySearchNode<T> | null, treeRight: BinarySearchNode<T> | null): BinarySearchNode<T> | null;
|
|
38
38
|
/**
|
|
39
39
|
* @inheritDoc
|
|
40
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
40
41
|
*/
|
|
41
42
|
max(): T;
|
|
42
43
|
/**
|
|
43
44
|
* @inheritDoc
|
|
45
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
44
46
|
*/
|
|
45
47
|
min(): T;
|
|
46
48
|
/**
|
|
47
49
|
* @inheritDoc
|
|
50
|
+
* @throws {IsAlreadyExistsException} when node already exists
|
|
48
51
|
*/
|
|
49
52
|
insert(value: T): void;
|
|
50
53
|
/**
|
|
@@ -53,6 +56,7 @@ export default class BinarySearchTree<T> extends AbstractBinaryTree<T> {
|
|
|
53
56
|
has(value: T): boolean;
|
|
54
57
|
/**
|
|
55
58
|
* @inheritDoc
|
|
59
|
+
* @throws {IsNotFoundException} when node was not found
|
|
56
60
|
*/
|
|
57
61
|
delete(value: T): void;
|
|
58
62
|
/**
|
|
@@ -61,6 +65,7 @@ export default class BinarySearchTree<T> extends AbstractBinaryTree<T> {
|
|
|
61
65
|
subtree(value: T): IBinaryTree<T>;
|
|
62
66
|
/**
|
|
63
67
|
* @inheritDoc
|
|
68
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
64
69
|
*/
|
|
65
70
|
traverse(type: EnumTreeTraversalType, from?: T): Array<T>;
|
|
66
71
|
/**
|
|
@@ -35,7 +35,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
37
|
*
|
|
38
|
-
* @throws when
|
|
38
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
39
39
|
*/
|
|
40
40
|
BinarySearchTree.prototype.checkIsEmpty = function () {
|
|
41
41
|
if (this._head === null) {
|
|
@@ -108,6 +108,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
108
108
|
};
|
|
109
109
|
/**
|
|
110
110
|
* @inheritDoc
|
|
111
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
111
112
|
*/
|
|
112
113
|
BinarySearchTree.prototype.max = function () {
|
|
113
114
|
this.checkIsEmpty();
|
|
@@ -119,6 +120,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
119
120
|
};
|
|
120
121
|
/**
|
|
121
122
|
* @inheritDoc
|
|
123
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
122
124
|
*/
|
|
123
125
|
BinarySearchTree.prototype.min = function () {
|
|
124
126
|
this.checkIsEmpty();
|
|
@@ -130,6 +132,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
130
132
|
};
|
|
131
133
|
/**
|
|
132
134
|
* @inheritDoc
|
|
135
|
+
* @throws {IsAlreadyExistsException} when node already exists
|
|
133
136
|
*/
|
|
134
137
|
BinarySearchTree.prototype.insert = function (value) {
|
|
135
138
|
if (this.has(value)) {
|
|
@@ -147,6 +150,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
147
150
|
};
|
|
148
151
|
/**
|
|
149
152
|
* @inheritDoc
|
|
153
|
+
* @throws {IsNotFoundException} when node was not found
|
|
150
154
|
*/
|
|
151
155
|
BinarySearchTree.prototype.delete = function (value) {
|
|
152
156
|
var _this = this;
|
|
@@ -204,6 +208,7 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
204
208
|
};
|
|
205
209
|
/**
|
|
206
210
|
* @inheritDoc
|
|
211
|
+
* @throws {CollectionIsEmptyException} when tree is empty
|
|
207
212
|
*/
|
|
208
213
|
BinarySearchTree.prototype.traverse = function (type, from) {
|
|
209
214
|
this.checkIsEmpty();
|
|
@@ -234,13 +239,13 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
234
239
|
storeInOrder(node.right);
|
|
235
240
|
};
|
|
236
241
|
switch (type) {
|
|
237
|
-
case EnumTreeTraversalType_1.EnumTreeTraversalType.
|
|
242
|
+
case EnumTreeTraversalType_1.EnumTreeTraversalType.IN_ORDER:
|
|
238
243
|
storeInOrder(root);
|
|
239
244
|
break;
|
|
240
|
-
case EnumTreeTraversalType_1.EnumTreeTraversalType.
|
|
245
|
+
case EnumTreeTraversalType_1.EnumTreeTraversalType.POST_ORDER:
|
|
241
246
|
storePostOrder(root);
|
|
242
247
|
break;
|
|
243
|
-
case EnumTreeTraversalType_1.EnumTreeTraversalType.
|
|
248
|
+
case EnumTreeTraversalType_1.EnumTreeTraversalType.PRE_ORDER:
|
|
244
249
|
storePreOrder(root);
|
|
245
250
|
break;
|
|
246
251
|
}
|
|
@@ -268,4 +273,4 @@ var BinarySearchTree = /** @class */ (function (_super) {
|
|
|
268
273
|
return BinarySearchTree;
|
|
269
274
|
}(AbstractBinaryTree_1.default));
|
|
270
275
|
exports.default = BinarySearchTree;
|
|
271
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5U2VhcmNoVHJlZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZGF0YS1zdHJ1Y3R1cmVzL0JpbmFyeVRyZWUvQmluYXJ5U2VhcmNoVHJlZS9CaW5hcnlTZWFyY2hUcmVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDhFQUE2RTtBQUU3RSwrRUFBMEU7QUFDMUUsdURBQWtEO0FBQ2xELDJDQUFzQztBQUN0Qyx5RkFBb0Y7QUFDcEYsK0VBQTBFO0FBQzFFLDZGQUF3RjtBQUV4Rjs7R0FFRztBQUNIO0lBQWlELG9DQUFxQjtJQU1wRTs7T0FFRztJQUNILDBCQUFtQixTQUEyQjtRQUE5QyxZQUNFLGtCQUFNLFNBQVMsQ0FBQyxTQUVqQjtRQURDLEtBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDOztJQUNwQixDQUFDO0lBRUQ7OztPQUdHO0lBQ08sdUNBQVksR0FBdEI7UUFDRSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ3ZCLE1BQU0sSUFBSSxvQ0FBMEIsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNPLGlEQUFzQixHQUFoQyxVQUFpQyxJQUF5QjtRQUN4RCxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSxFQUFFO1lBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUU7WUFDNUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ08sbUNBQVEsR0FBbEIsVUFBbUIsS0FBUTtRQUN6QixJQUFJ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
|
|
@@ -47,6 +47,7 @@ export default class RandBinarySearchTree<T> extends BinarySearchTree<T> {
|
|
|
47
47
|
protected insertRandomly(createdNode: RandBinarySearchNode<T>): void;
|
|
48
48
|
/**
|
|
49
49
|
* @inheritDoc
|
|
50
|
+
* @throws {IsAlreadyExistsException} when node already exists
|
|
50
51
|
*/
|
|
51
52
|
insert(value: T): void;
|
|
52
53
|
/**
|
|
@@ -210,6 +210,7 @@ var RandBinarySearchTree = /** @class */ (function (_super) {
|
|
|
210
210
|
};
|
|
211
211
|
/**
|
|
212
212
|
* @inheritDoc
|
|
213
|
+
* @throws {IsAlreadyExistsException} when node already exists
|
|
213
214
|
*/
|
|
214
215
|
RandBinarySearchTree.prototype.insert = function (value) {
|
|
215
216
|
if (this.has(value)) {
|
|
@@ -232,4 +233,4 @@ var RandBinarySearchTree = /** @class */ (function (_super) {
|
|
|
232
233
|
return RandBinarySearchTree;
|
|
233
234
|
}(BinarySearchTree_1.default));
|
|
234
235
|
exports.default = RandBinarySearchTree;
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFuZEJpbmFyeVNlYXJjaFRyZWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2RhdGEtc3RydWN0dXJlcy9CaW5hcnlUcmVlL1JhbmRCaW5hcnlTZWFyY2hUcmVlL1JhbmRCaW5hcnlTZWFyY2hUcmVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUNBLCtEQUEwRDtBQUMxRCx5RUFBb0U7QUFDcEUseUZBQW9GO0FBRXBGOztHQUVHO0FBQ0g7SUFBcUQsd0NBQW1CO0lBTXRFOztPQUVHO0lBQ0gsOEJBQW1CLFNBQTJCO1FBQTlDLFlBQ0Usa0JBQU0sU0FBUyxDQUFDLFNBRWpCO1FBREMsS0FBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7O0lBQ3BCLENBQUM7SUFFRDs7T0FFRztJQUNLLHlDQUFVLEdBQWxCLFVBQW1CLElBQTZCOztRQUM5QyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsT0FBQSxJQUFJLENBQUMsS0FBSywwQ0FBRSxJQUFJLEtBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLElBQUksS0FBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOztPQUVHO0lBQ0ssNkNBQWMsR0FBdEIsVUFDRSxJQUE2QixFQUM3QixVQUFpRDtRQUFqRCwyQkFBQSxFQUFBLGlCQUFpRDtRQUVqRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksVUFBVSxLQUFLLElBQUksRUFBRTtZQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztTQUMxQjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0ssOENBQWUsR0FBdkIsVUFBd0IsSUFBNkI7UUFDbkQsSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLEtBQUssS0FB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
|
|
@@ -16,7 +16,7 @@ export default abstract class AbstractGraph<T> {
|
|
|
16
16
|
protected getVerticesArrayFormat(): Array<T>;
|
|
17
17
|
/**
|
|
18
18
|
* Find vertex in vertices list by its data
|
|
19
|
-
* @throws when vertex was not found
|
|
19
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
20
20
|
*/
|
|
21
21
|
protected tryFindVertex(data: T): T;
|
|
22
22
|
/**
|
|
@@ -49,12 +49,12 @@ export default abstract class AbstractGraph<T> {
|
|
|
49
49
|
edgesCount(): number;
|
|
50
50
|
/**
|
|
51
51
|
* Add vertex
|
|
52
|
-
* @throws when vertex is already exists
|
|
52
|
+
* @throws {IsAlreadyExistsException} when vertex is already exists
|
|
53
53
|
*/
|
|
54
54
|
addVertex(data: T): this;
|
|
55
55
|
/**
|
|
56
56
|
* Remove vertex
|
|
57
|
-
* @throws when vertex is already does not exist
|
|
57
|
+
* @throws {IsNotFoundException} when vertex is already does not exist
|
|
58
58
|
*/
|
|
59
59
|
removeVertex(data: T): this;
|
|
60
60
|
/**
|
|
@@ -18,7 +18,7 @@ var AbstractGraph = /** @class */ (function () {
|
|
|
18
18
|
};
|
|
19
19
|
/**
|
|
20
20
|
* Find vertex in vertices list by its data
|
|
21
|
-
* @throws when vertex was not found
|
|
21
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
22
22
|
*/
|
|
23
23
|
AbstractGraph.prototype.tryFindVertex = function (data) {
|
|
24
24
|
var isExists = this._vertices.has(data);
|
|
@@ -82,7 +82,7 @@ var AbstractGraph = /** @class */ (function () {
|
|
|
82
82
|
};
|
|
83
83
|
/**
|
|
84
84
|
* Add vertex
|
|
85
|
-
* @throws when vertex is already exists
|
|
85
|
+
* @throws {IsAlreadyExistsException} when vertex is already exists
|
|
86
86
|
*/
|
|
87
87
|
AbstractGraph.prototype.addVertex = function (data) {
|
|
88
88
|
if (this.hasVertex(data)) {
|
|
@@ -93,7 +93,7 @@ var AbstractGraph = /** @class */ (function () {
|
|
|
93
93
|
};
|
|
94
94
|
/**
|
|
95
95
|
* Remove vertex
|
|
96
|
-
* @throws when vertex is already does not exist
|
|
96
|
+
* @throws {IsNotFoundException} when vertex is already does not exist
|
|
97
97
|
*/
|
|
98
98
|
AbstractGraph.prototype.removeVertex = function (data) {
|
|
99
99
|
try {
|
|
@@ -11,14 +11,17 @@ export default class DirectedGraph<T> extends AbstractGraph<T> {
|
|
|
11
11
|
constructor();
|
|
12
12
|
/**
|
|
13
13
|
* @inheritDoc
|
|
14
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
14
15
|
*/
|
|
15
16
|
protected getEdgeByValue(from: T, to: T): GraphEdge<T>;
|
|
16
17
|
/**
|
|
17
18
|
* @inheritDoc
|
|
19
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
18
20
|
*/
|
|
19
21
|
addEdge(from: T, to: T, weight?: number): this;
|
|
20
22
|
/**
|
|
21
23
|
* @inheritDoc
|
|
24
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
22
25
|
*/
|
|
23
26
|
removeEdge(from: T, to: T): this;
|
|
24
27
|
}
|
|
@@ -30,6 +30,7 @@ var DirectedGraph = /** @class */ (function (_super) {
|
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* @inheritDoc
|
|
33
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
33
34
|
*/
|
|
34
35
|
DirectedGraph.prototype.getEdgeByValue = function (from, to) {
|
|
35
36
|
var edge = this._edges.find(function (edge) { return edge.fromVertex === from && edge.toVertex === to; });
|
|
@@ -40,6 +41,7 @@ var DirectedGraph = /** @class */ (function (_super) {
|
|
|
40
41
|
};
|
|
41
42
|
/**
|
|
42
43
|
* @inheritDoc
|
|
44
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
43
45
|
*/
|
|
44
46
|
DirectedGraph.prototype.addEdge = function (from, to, weight) {
|
|
45
47
|
var _a;
|
|
@@ -64,6 +66,7 @@ var DirectedGraph = /** @class */ (function (_super) {
|
|
|
64
66
|
};
|
|
65
67
|
/**
|
|
66
68
|
* @inheritDoc
|
|
69
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
67
70
|
*/
|
|
68
71
|
DirectedGraph.prototype.removeEdge = function (from, to) {
|
|
69
72
|
try {
|
|
@@ -83,4 +86,4 @@ var DirectedGraph = /** @class */ (function (_super) {
|
|
|
83
86
|
return DirectedGraph;
|
|
84
87
|
}(AbstractGraph_1.default));
|
|
85
88
|
exports.default = DirectedGraph;
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlyZWN0ZWRHcmFwaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvZGF0YS1zdHJ1Y3R1cmVzL0dyYXBoL0RpcmVjdGVkR3JhcGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQTRDO0FBQzVDLHlDQUFvQztBQUNwQyw0RUFBdUU7QUFFdkU7OztHQUdHO0FBQ0g7SUFBOEMsaUNBQWdCO0lBQzVEOztPQUVHO0lBQ0g7ZUFDRSxpQkFBTztJQUNULENBQUM7SUFFRDs7O09BR0c7SUFDTyxzQ0FBYyxHQUF4QixVQUF5QixJQUFPLEVBQUUsRUFBSztRQUNyQyxJQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDM0IsVUFBQyxJQUFrQixJQUFLLE9BQUEsSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxFQUFFLEVBQWhELENBQWdELENBQ3pFLENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsTUFBTSxJQUFJLDZCQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDakQ7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSwrQkFBTyxHQUFkLFVBQWUsSUFBTyxFQUFFLEVBQUssRUFBRSxNQUFlOztRQUM1QyxJQUFJO1lBQ0YsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRXhDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQUU7Z0JBQ3RDLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO29CQUM5QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztpQkFDckQ7YUFDRjtpQkFBTTtnQkFDTCxJQUFNLElBQUksR0FBRyxJQUFJLG1CQUFTLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3ZCLE1BQUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLDBDQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7YUFDaEQ7U0FDRjtRQUFDLFdBQU07WUFDTixNQUFNLElBQUksNkJBQW1CLENBQzNCLDREQUE0RCxDQUM3RCxDQUFDO1NBQ0g7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSxrQ0FBVSxHQUFqQixVQUFrQixJQUFPLEVBQUUsRUFBSztRQUM5QixJQUFJO1lBQ0YsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxJQUFNLFVBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLElBQU0sY0FBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFVBQVEsQ0FBQyxDQUFDO1lBRS9ELElBQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pFLElBQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUNqRCxVQUFDLE1BQVMsSUFBSyxPQUFBLFVBQVEsS0FBSyxNQUFNLEVBQW5CLENBQW1CLENBQ25DLENBQUM7WUFFRixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUM5QixVQUFDLElBQWtCLElBQUssT0FBQSxJQUFJLEtBQUssY0FBWSxFQUFyQixDQUFxQixDQUM5QyxDQUFDO1NBQ0g7UUFBQyxXQUFNO1lBQ04sTUFBTSxJQUFJLDZCQUFtQixDQUMzQiw4REFBOEQsQ0FDL0QsQ0FBQztTQUNIO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0gsb0JBQUM7QUFBRCxDQUFDLEFBL0VELENBQThDLHVCQUFhLEdBK0UxRCJ9
|
|
@@ -11,6 +11,7 @@ export default class UndirectedGraph<T> extends AbstractGraph<T> {
|
|
|
11
11
|
constructor();
|
|
12
12
|
/**
|
|
13
13
|
* @inheritDoc
|
|
14
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
14
15
|
*/
|
|
15
16
|
protected getEdgeByValue(from: T, to: T): GraphEdge<T>;
|
|
16
17
|
/**
|
|
@@ -19,10 +20,12 @@ export default class UndirectedGraph<T> extends AbstractGraph<T> {
|
|
|
19
20
|
hasEdge(from: T, to: T): boolean;
|
|
20
21
|
/**
|
|
21
22
|
* @inheritDoc
|
|
23
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
22
24
|
*/
|
|
23
25
|
addEdge(from: T, to: T, weight?: number): this;
|
|
24
26
|
/**
|
|
25
27
|
* @inheritDoc
|
|
28
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
26
29
|
*/
|
|
27
30
|
removeEdge(from: T, to: T): this;
|
|
28
31
|
}
|
|
@@ -30,6 +30,7 @@ var UndirectedGraph = /** @class */ (function (_super) {
|
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* @inheritDoc
|
|
33
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
33
34
|
*/
|
|
34
35
|
UndirectedGraph.prototype.getEdgeByValue = function (from, to) {
|
|
35
36
|
var edge = this._edges.find(function (edge) {
|
|
@@ -52,6 +53,7 @@ var UndirectedGraph = /** @class */ (function (_super) {
|
|
|
52
53
|
};
|
|
53
54
|
/**
|
|
54
55
|
* @inheritDoc
|
|
56
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
55
57
|
*/
|
|
56
58
|
UndirectedGraph.prototype.addEdge = function (from, to, weight) {
|
|
57
59
|
var _a, _b;
|
|
@@ -78,6 +80,7 @@ var UndirectedGraph = /** @class */ (function (_super) {
|
|
|
78
80
|
};
|
|
79
81
|
/**
|
|
80
82
|
* @inheritDoc
|
|
83
|
+
* @throws {IsNotFoundException} when vertex was not found
|
|
81
84
|
*/
|
|
82
85
|
UndirectedGraph.prototype.removeEdge = function (from, to) {
|
|
83
86
|
try {
|
|
@@ -100,4 +103,4 @@ var UndirectedGraph = /** @class */ (function (_super) {
|
|
|
100
103
|
return UndirectedGraph;
|
|
101
104
|
}(AbstractGraph_1.default));
|
|
102
105
|
exports.default = UndirectedGraph;
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5kaXJlY3RlZEdyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9kYXRhLXN0cnVjdHVyZXMvR3JhcGgvVW5kaXJlY3RlZEdyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlEQUE0QztBQUM1Qyx5Q0FBb0M7QUFDcEMsNEVBQXVFO0FBRXZFOzs7R0FHRztBQUNIO0lBQWdELG1DQUFnQjtJQUM5RDs7T0FFRztJQUNIO2VBQ0UsaUJBQU87SUFDVCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sd0NBQWMsR0FBeEIsVUFBeUIsSUFBTyxFQUFFLEVBQUs7UUFDckMsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzNCLFVBQUMsSUFBa0I7WUFDakIsT0FBQSxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssRUFBRSxDQUFDO2dCQUNsRCxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDO1FBRGxELENBQ2tELENBQ3JELENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsTUFBTSxJQUFJLDZCQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDakQ7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNJLGlDQUFPLEdBQWQsVUFBZSxJQUFPLEVBQUUsRUFBSztRQUMzQixPQUFPLE9BQU8sQ0FDWixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFDLElBQUk7WUFDcEIsT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxFQUFFLENBQUM7Z0JBQ2xELENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxFQUFFLElBQUksSUFB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
|
|
@@ -10,10 +10,10 @@ var EnumGraphType_1 = require("../../../types/EnumGraphType");
|
|
|
10
10
|
exports.createGraph = function (type) {
|
|
11
11
|
var graph;
|
|
12
12
|
switch (type) {
|
|
13
|
-
case EnumGraphType_1.EnumGraphType.
|
|
13
|
+
case EnumGraphType_1.EnumGraphType.DIRECTED:
|
|
14
14
|
graph = new DirectedGraph_1.default();
|
|
15
15
|
break;
|
|
16
|
-
case EnumGraphType_1.EnumGraphType.
|
|
16
|
+
case EnumGraphType_1.EnumGraphType.UNDIRECTED:
|
|
17
17
|
graph = new UndirectedGraph_1.default();
|
|
18
18
|
break;
|
|
19
19
|
}
|
|
@@ -21,13 +21,13 @@ exports.createGraphFromMatrix = function (matrix, fieldsList, type) {
|
|
|
21
21
|
row.forEach(function (col, colIndex) {
|
|
22
22
|
var rowColState = matrix[rowIndex][colIndex];
|
|
23
23
|
var colRowState = matrix[colIndex][rowIndex];
|
|
24
|
-
if (type === EnumGraphType_1.EnumGraphType.
|
|
24
|
+
if (type === EnumGraphType_1.EnumGraphType.UNDIRECTED) {
|
|
25
25
|
if (rowColState === constants_1.EDGE_EXISTS_STATE &&
|
|
26
26
|
colRowState === constants_1.EDGE_EXISTS_STATE) {
|
|
27
27
|
graph.addEdge(fieldsList[rowIndex], fieldsList[colIndex]);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
if (type === EnumGraphType_1.EnumGraphType.
|
|
30
|
+
if (type === EnumGraphType_1.EnumGraphType.DIRECTED) {
|
|
31
31
|
if (rowColState === constants_1.EDGE_EXISTS_STATE) {
|
|
32
32
|
graph.addEdge(fieldsList[rowIndex], fieldsList[colIndex]);
|
|
33
33
|
}
|