@raikuxq/alg-ds 1.2.1 → 1.2.2
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/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 +2 -0
- package/lib/app/data-structures/LinkedList/DoubleLinkedList/DoubleLinkedList.js +5 -3
- package/lib/app/data-structures/LinkedList/SingleLinkedList/SingleLinkedList.d.ts +2 -0
- package/lib/app/data-structures/LinkedList/SingleLinkedList/SingleLinkedList.js +4 -2
- 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/package.json +1 -1
|
@@ -15,7 +15,7 @@ var Queue = /** @class */ (function () {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* Get first element in queue (without deleting)
|
|
18
|
-
* @throws when list is empty
|
|
18
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
19
19
|
*/
|
|
20
20
|
Queue.prototype.peek = function () {
|
|
21
21
|
if (this.isEmpty()) {
|
|
@@ -25,7 +25,7 @@ var Queue = /** @class */ (function () {
|
|
|
25
25
|
};
|
|
26
26
|
/**
|
|
27
27
|
* Add element to queue
|
|
28
|
-
* @throws when list is full
|
|
28
|
+
* @throws {CollectionIsFullException} when list is full
|
|
29
29
|
*/
|
|
30
30
|
Queue.prototype.push = function (item) {
|
|
31
31
|
if (this._list.isFull()) {
|
|
@@ -35,7 +35,7 @@ var Queue = /** @class */ (function () {
|
|
|
35
35
|
};
|
|
36
36
|
/**
|
|
37
37
|
* Delete first element in queue
|
|
38
|
-
* @throws when list is empty
|
|
38
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
39
39
|
*/
|
|
40
40
|
Queue.prototype.pop = function () {
|
|
41
41
|
if (this.isEmpty()) {
|
|
@@ -10,17 +10,17 @@ export default class Stack<T> implements ILinearStorage<T> {
|
|
|
10
10
|
constructor(capacity?: number);
|
|
11
11
|
/**
|
|
12
12
|
* Get stack top element
|
|
13
|
-
* @throws when list is empty
|
|
13
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
14
14
|
*/
|
|
15
15
|
peek(): T;
|
|
16
16
|
/**
|
|
17
17
|
* Add element to stack head
|
|
18
|
-
* @throws when list is full
|
|
18
|
+
* @throws {CollectionIsFullException} when list is full
|
|
19
19
|
*/
|
|
20
20
|
push(item: T): void;
|
|
21
21
|
/**
|
|
22
22
|
* Remove element from stack head
|
|
23
|
-
* @throws when list is empty
|
|
23
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
24
24
|
*/
|
|
25
25
|
pop(): T;
|
|
26
26
|
/**
|
|
@@ -15,7 +15,7 @@ var Stack = /** @class */ (function () {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* Get stack top element
|
|
18
|
-
* @throws when list is empty
|
|
18
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
19
19
|
*/
|
|
20
20
|
Stack.prototype.peek = function () {
|
|
21
21
|
if (this.isEmpty()) {
|
|
@@ -25,7 +25,7 @@ var Stack = /** @class */ (function () {
|
|
|
25
25
|
};
|
|
26
26
|
/**
|
|
27
27
|
* Add element to stack head
|
|
28
|
-
* @throws when list is full
|
|
28
|
+
* @throws {CollectionIsFullException} when list is full
|
|
29
29
|
*/
|
|
30
30
|
Stack.prototype.push = function (item) {
|
|
31
31
|
if (this.isFull()) {
|
|
@@ -35,7 +35,7 @@ var Stack = /** @class */ (function () {
|
|
|
35
35
|
};
|
|
36
36
|
/**
|
|
37
37
|
* Remove element from stack head
|
|
38
|
-
* @throws when list is empty
|
|
38
|
+
* @throws {CollectionIsEmptyException} when list is empty
|
|
39
39
|
*/
|
|
40
40
|
Stack.prototype.pop = function () {
|
|
41
41
|
if (this.isEmpty()) {
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EnumGraphType = void 0;
|
|
4
4
|
var EnumGraphType;
|
|
5
5
|
(function (EnumGraphType) {
|
|
6
|
-
EnumGraphType["
|
|
7
|
-
EnumGraphType["
|
|
6
|
+
EnumGraphType["DIRECTED"] = "DIRECTED";
|
|
7
|
+
EnumGraphType["UNDIRECTED"] = "UNDIRECTED";
|
|
8
8
|
})(EnumGraphType = exports.EnumGraphType || (exports.EnumGraphType = {}));
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW51bUdyYXBoVHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvdHlwZXMvRW51bUdyYXBoVHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLGFBR1g7QUFIRCxXQUFZLGFBQWE7SUFDdkIsc0NBQXFCLENBQUE7SUFDckIsMENBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQUhXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBR3hCIn0=
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EnumRandomGenerationFormat = void 0;
|
|
4
4
|
var EnumRandomGenerationFormat;
|
|
5
5
|
(function (EnumRandomGenerationFormat) {
|
|
6
|
-
EnumRandomGenerationFormat["
|
|
7
|
-
EnumRandomGenerationFormat["
|
|
6
|
+
EnumRandomGenerationFormat["NUMBERS"] = "NUMBERS";
|
|
7
|
+
EnumRandomGenerationFormat["HASH"] = "HASH";
|
|
8
8
|
})(EnumRandomGenerationFormat = exports.EnumRandomGenerationFormat || (exports.EnumRandomGenerationFormat = {}));
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW51bVJhbmRvbUdlbmVyYXRpb25Gb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL3R5cGVzL0VudW1SYW5kb21HZW5lcmF0aW9uRm9ybWF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQVksMEJBR1g7QUFIRCxXQUFZLDBCQUEwQjtJQUNwQyxpREFBbUIsQ0FBQTtJQUNuQiwyQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLDBCQUEwQixHQUExQixrQ0FBMEIsS0FBMUIsa0NBQTBCLFFBR3JDIn0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare enum EnumSortType {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
QUICK = "QUICK",
|
|
3
|
+
MERGE = "MERGE",
|
|
4
|
+
SELECTION = "SELECTION",
|
|
5
|
+
BUBBLE = "BUBBLE",
|
|
6
|
+
INSERTION = "INSERTION"
|
|
7
7
|
}
|
|
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EnumSortType = void 0;
|
|
4
4
|
var EnumSortType;
|
|
5
5
|
(function (EnumSortType) {
|
|
6
|
-
EnumSortType["
|
|
7
|
-
EnumSortType["
|
|
8
|
-
EnumSortType["
|
|
9
|
-
EnumSortType["
|
|
10
|
-
EnumSortType["
|
|
6
|
+
EnumSortType["QUICK"] = "QUICK";
|
|
7
|
+
EnumSortType["MERGE"] = "MERGE";
|
|
8
|
+
EnumSortType["SELECTION"] = "SELECTION";
|
|
9
|
+
EnumSortType["BUBBLE"] = "BUBBLE";
|
|
10
|
+
EnumSortType["INSERTION"] = "INSERTION";
|
|
11
11
|
})(EnumSortType = exports.EnumSortType || (exports.EnumSortType = {}));
|
|
12
12
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW51bVNvcnRUeXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC90eXBlcy9FbnVtU29ydFR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxZQU1YO0FBTkQsV0FBWSxZQUFZO0lBQ3RCLCtCQUFlLENBQUE7SUFDZiwrQkFBZSxDQUFBO0lBQ2YsdUNBQXVCLENBQUE7SUFDdkIsaUNBQWlCLENBQUE7SUFDakIsdUNBQXVCLENBQUE7QUFDekIsQ0FBQyxFQU5XLFlBQVksR0FBWixvQkFBWSxLQUFaLG9CQUFZLFFBTXZCIn0=
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EnumTreeTraversalType = void 0;
|
|
4
4
|
var EnumTreeTraversalType;
|
|
5
5
|
(function (EnumTreeTraversalType) {
|
|
6
|
-
EnumTreeTraversalType["
|
|
7
|
-
EnumTreeTraversalType["
|
|
8
|
-
EnumTreeTraversalType["
|
|
6
|
+
EnumTreeTraversalType["IN_ORDER"] = "IN_ORDER";
|
|
7
|
+
EnumTreeTraversalType["PRE_ORDER"] = "PRE_ORDER";
|
|
8
|
+
EnumTreeTraversalType["POST_ORDER"] = "POST_ORDER";
|
|
9
9
|
})(EnumTreeTraversalType = exports.EnumTreeTraversalType || (exports.EnumTreeTraversalType = {}));
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW51bVRyZWVUcmF2ZXJzYWxUeXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC90eXBlcy9FbnVtVHJlZVRyYXZlcnNhbFR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxxQkFJWDtBQUpELFdBQVkscUJBQXFCO0lBQy9CLDhDQUFxQixDQUFBO0lBQ3JCLGdEQUF1QixDQUFBO0lBQ3ZCLGtEQUF5QixDQUFBO0FBQzNCLENBQUMsRUFKVyxxQkFBcUIsR0FBckIsNkJBQXFCLEtBQXJCLDZCQUFxQixRQUloQyJ9
|
package/lib/app/utils.d.ts
CHANGED
|
@@ -16,9 +16,9 @@ export declare const swapArrayItems: <T>(arr: T[], leftIndex: number, rightIndex
|
|
|
16
16
|
*/
|
|
17
17
|
export declare const randomizeNumberInRange: (min: number, max: number) => number;
|
|
18
18
|
/**
|
|
19
|
-
* Round number to
|
|
19
|
+
* Round number to given digits after
|
|
20
20
|
*/
|
|
21
|
-
export declare const roundNumber: (num: number) => number;
|
|
21
|
+
export declare const roundNumber: (num: number, digits?: number) => number;
|
|
22
22
|
/**
|
|
23
23
|
* Get time execution of function
|
|
24
24
|
*/
|
package/lib/app/utils.js
CHANGED
|
@@ -70,10 +70,11 @@ exports.randomizeNumberInRange = function (min, max) {
|
|
|
70
70
|
return Math.floor(Math.random() * (max - min)) + min;
|
|
71
71
|
};
|
|
72
72
|
/**
|
|
73
|
-
* Round number to
|
|
73
|
+
* Round number to given digits after
|
|
74
74
|
*/
|
|
75
|
-
exports.roundNumber = function (num) {
|
|
76
|
-
|
|
75
|
+
exports.roundNumber = function (num, digits) {
|
|
76
|
+
if (digits === void 0) { digits = 3; }
|
|
77
|
+
return Math.round(num * Math.pow(10, digits)) / Math.pow(10, digits);
|
|
77
78
|
};
|
|
78
79
|
/**
|
|
79
80
|
* Get time execution of function
|
|
@@ -111,4 +112,4 @@ exports.checkIsArrayMatrix = function (array) {
|
|
|
111
112
|
exports.randomizeArray = function (length, max) {
|
|
112
113
|
return new Array(length).fill(0).map(function () { return Math.round(Math.random() * max); });
|
|
113
114
|
};
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUF5QztBQUV6Qzs7R0FFRztBQUNVLFFBQUEsV0FBVyxHQUFHLFVBQUMsR0FBa0I7SUFDNUMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLO1FBQ3RDLE9BQU8sSUFBSSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDakQsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ1IsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLG9CQUFvQixHQUFHLFVBQ2xDLEdBQWtCLEVBQ2xCLFNBQWlCO0lBRWpCLE9BQU8sU0FBUyxHQUFHLG1CQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQ3ZELENBQUMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsY0FBYyxHQUFHLFVBQzVCLEdBQWEsRUFDYixTQUFpQixFQUNqQixVQUFrQjtJQUVsQixJQUFJLFNBQVMsS0FBSyxVQUFVLEVBQUU7UUFDNUIsSUFBTSxJQUFJLEdBQU0sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9CLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztLQUN4QjtBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRyxVQUFDLEdBQVcsRUFBRSxHQUFXO0lBQzdELE9BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHO0FBQTdDLENBQTZDLENBQUM7QUFFaEQ7O0dBRUc7QUFDVSxRQUFBLFdBQVcsR0FBRyxVQUFDLEdBQVcsRUFBRSxNQUFVO0lBQVYsdUJBQUEsRUFBQSxVQUFVO0lBQ2pELE9BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsU0FBQSxFQUFFLEVBQUksTUFBTSxDQUFBLENBQUMsR0FBRyxTQUFBLEVBQUUsRUFBSSxNQUFNLENBQUE7QUFBN0MsQ0FBNkMsQ0FBQztBQUVoRDs7R0FFRztBQUNVLFFBQUEsSUFBSSxHQUFHLFVBQUMsRUFBYztJQUNqQyxJQUFNLFNBQVMsR0FBRyx3QkFBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3BDLEVBQUUsRUFBRSxDQUFDO0lBQ0wsSUFBTSxPQUFPLEdBQUcsd0JBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNsQyxPQUFPLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLFNBQVMsR0FBRyxVQUFPLEVBQWM7O1FBQzVDLHNCQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUM7O0tBQ2xDLENBQUM7QUFFRjs7R0FFRztBQUNVLFFBQUEsa0JBQWtCLEdBQUcsVUFBSSxLQUFzQjtJQUMxRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNyQyxJQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsSUFBTSxpQkFBaUIsR0FBRyxRQUFRLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0QsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3RCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLGNBQWMsR0FBRyxVQUFDLE1BQWMsRUFBRSxHQUFXO0lBQ3hELE9BQUEsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxjQUFNLE9BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQS9CLENBQStCLENBQUM7QUFBcEUsQ0FBb0UsQ0FBQyJ9
|
package/package.json
CHANGED