min-heap-typed 1.38.1 → 1.38.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "min-heap-typed",
3
- "version": "1.38.1",
3
+ "version": "1.38.2",
4
4
  "description": "Min Heap. Javascript & Typescript Data Structure.",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -152,7 +152,7 @@ export class AVLTree<N extends AVLTreeNode<N['val'], N> = AVLTreeNode> extends B
152
152
  // Balance Restoration: If a balance issue is discovered after inserting a node, it requires balance restoration operations. Balance restoration includes four basic cases where rotation operations need to be performed to fix the balance:
153
153
  switch (
154
154
  this._balanceFactor(A) // second O(1)
155
- ) {
155
+ ) {
156
156
  case -2:
157
157
  if (A && A.left) {
158
158
  if (this._balanceFactor(A.left) <= 0) {
@@ -17,7 +17,7 @@ export class BinaryIndexedTree {
17
17
  * @param - - `frequency`: The default frequency value. It is optional and has a default
18
18
  * value of 0.
19
19
  */
20
- constructor({frequency = 0, max}: {frequency?: number; max: number}) {
20
+ constructor({frequency = 0, max}: { frequency?: number; max: number }) {
21
21
  this._freq = frequency;
22
22
  this._max = max;
23
23
  this._freqMap = {0: 0};
@@ -407,7 +407,7 @@ export class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTreeNode>
407
407
  return -1;
408
408
  }
409
409
 
410
- const stack: {node: N; depth: number}[] = [{node: beginRoot, depth: 0}];
410
+ const stack: { node: N; depth: number }[] = [{node: beginRoot, depth: 0}];
411
411
  let maxHeight = 0;
412
412
 
413
413
  while (stack.length > 0) {
@@ -842,7 +842,7 @@ export class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTreeNode>
842
842
  _traverse(beginRoot);
843
843
  } else {
844
844
  // 0: visit, 1: print
845
- const stack: {opt: 0 | 1; node: N | null | undefined}[] = [{opt: 0, node: beginRoot}];
845
+ const stack: { opt: 0 | 1; node: N | null | undefined }[] = [{opt: 0, node: beginRoot}];
846
846
 
847
847
  while (stack.length > 0) {
848
848
  const cur = stack.pop();
@@ -37,8 +37,7 @@ export class TreeMultisetNode<
37
37
  */
38
38
  export class TreeMultiset<N extends TreeMultisetNode<N['val'], N> = TreeMultisetNode>
39
39
  extends AVLTree<N>
40
- implements IBinaryTree<N>
41
- {
40
+ implements IBinaryTree<N> {
42
41
  /**
43
42
  * The constructor function for a TreeMultiset class in TypeScript, which extends another class and sets an option to
44
43
  * merge duplicated values.
@@ -105,8 +105,7 @@ export abstract class AbstractEdge<V = any> {
105
105
  export abstract class AbstractGraph<
106
106
  V extends AbstractVertex<any> = AbstractVertex<any>,
107
107
  E extends AbstractEdge<any> = AbstractEdge<any>
108
- > implements IGraph<V, E>
109
- {
108
+ > implements IGraph<V, E> {
110
109
  private _vertices: Map<VertexKey, V> = new Map<VertexKey, V>();
111
110
 
112
111
  get vertices(): Map<VertexKey, V> {
@@ -554,14 +553,14 @@ export abstract class AbstractGraph<
554
553
  }
555
554
 
556
555
  getMinDist &&
557
- distMap.forEach((d, v) => {
558
- if (v !== srcVertex) {
559
- if (d < minDist) {
560
- minDist = d;
561
- if (genPaths) minDest = v;
562
- }
556
+ distMap.forEach((d, v) => {
557
+ if (v !== srcVertex) {
558
+ if (d < minDist) {
559
+ minDist = d;
560
+ if (genPaths) minDest = v;
563
561
  }
564
- });
562
+ }
563
+ });
565
564
 
566
565
  genPaths && getPaths(minDest);
567
566
 
@@ -623,7 +622,7 @@ export abstract class AbstractGraph<
623
622
  if (vertexOrKey instanceof AbstractVertex) distMap.set(vertexOrKey, Infinity);
624
623
  }
625
624
 
626
- const heap = new PriorityQueue<{key: number; val: V}>((a, b) => a.key - b.key);
625
+ const heap = new PriorityQueue<{ key: number; val: V }>((a, b) => a.key - b.key);
627
626
  heap.add({key: 0, val: srcVertex});
628
627
 
629
628
  distMap.set(srcVertex, 0);
@@ -852,7 +851,7 @@ export abstract class AbstractGraph<
852
851
  * `predecessor` property is a 2D array of vertices (or `null`) representing the predecessor vertices in the shortest
853
852
  * path between vertices in the
854
853
  */
855
- floyd(): {costs: number[][]; predecessor: (V | null)[][]} {
854
+ floyd(): { costs: number[][]; predecessor: (V | null)[][] } {
856
855
  const idAndVertices = [...this._vertices];
857
856
  const n = idAndVertices.length;
858
857
 
@@ -64,8 +64,7 @@ export class DirectedEdge<V = any> extends AbstractEdge<V> {
64
64
 
65
65
  export class DirectedGraph<V extends DirectedVertex<any> = DirectedVertex, E extends DirectedEdge<any> = DirectedEdge>
66
66
  extends AbstractGraph<V, E>
67
- implements IGraph<V, E>
68
- {
67
+ implements IGraph<V, E> {
69
68
  /**
70
69
  * The constructor function initializes an instance of a class.
71
70
  */
@@ -51,12 +51,11 @@ export class UndirectedEdge<V = number> extends AbstractEdge<V> {
51
51
  }
52
52
 
53
53
  export class UndirectedGraph<
54
- V extends UndirectedVertex<any> = UndirectedVertex,
55
- E extends UndirectedEdge<any> = UndirectedEdge
56
- >
54
+ V extends UndirectedVertex<any> = UndirectedVertex,
55
+ E extends UndirectedEdge<any> = UndirectedEdge
56
+ >
57
57
  extends AbstractGraph<V, E>
58
- implements IGraph<V, E>
59
- {
58
+ implements IGraph<V, E> {
60
59
  /**
61
60
  * The constructor initializes a new Map object to store edges.
62
61
  */
@@ -157,7 +157,7 @@ export class HashMap<K, V> {
157
157
  }
158
158
  }
159
159
 
160
- *entries(): IterableIterator<[K, V]> {
160
+ * entries(): IterableIterator<[K, V]> {
161
161
  for (const bucket of this.table) {
162
162
  if (bucket) {
163
163
  for (const [key, value] of bucket) {
@@ -1 +1,2 @@
1
- export class TreeMap {}
1
+ export class TreeMap {
2
+ }
@@ -1 +1,2 @@
1
- export class TreeSet {}
1
+ export class TreeSet {
2
+ }
@@ -490,7 +490,7 @@ export class SinglyLinkedList<E = any> {
490
490
  return count;
491
491
  }
492
492
 
493
- *[Symbol.iterator]() {
493
+ * [Symbol.iterator]() {
494
494
  let current = this.head;
495
495
 
496
496
  while (current) {
@@ -14,7 +14,7 @@ export class MatrixNTI2D<V = any> {
14
14
  * given initial value or 0 if not provided.
15
15
  * @param options - An object containing the following properties:
16
16
  */
17
- constructor(options: {row: number; col: number; initialVal?: V}) {
17
+ constructor(options: { row: number; col: number; initialVal?: V }) {
18
18
  const {row, col, initialVal} = options;
19
19
  this._matrix = new Array(row).fill(undefined).map(() => new Array(col).fill(initialVal || 0));
20
20
  }
@@ -10,7 +10,8 @@ export class Vector2D {
10
10
  public x: number = 0,
11
11
  public y: number = 0,
12
12
  public w: number = 1 // needed for matrix multiplication
13
- ) {}
13
+ ) {
14
+ }
14
15
 
15
16
  /**
16
17
  * The function checks if the x and y values of a point are both zero.
@@ -9,7 +9,8 @@ import {DoublyLinkedList} from '../linked-list';
9
9
 
10
10
  // O(n) time complexity of obtaining the value
11
11
  // O(1) time complexity of adding at the beginning and the end
12
- export class Deque<E = any> extends DoublyLinkedList<E> {}
12
+ export class Deque<E = any> extends DoublyLinkedList<E> {
13
+ }
13
14
 
14
15
  // O(1) time complexity of obtaining the value
15
16
  // O(n) time complexity of adding at the beginning and the end
@@ -19,9 +20,9 @@ export class ObjectDeque<E = number> {
19
20
  if (capacity !== undefined) this._capacity = capacity;
20
21
  }
21
22
 
22
- private _nodes: {[key: number]: E} = {};
23
+ private _nodes: { [key: number]: E } = {};
23
24
 
24
- get nodes(): {[p: number]: E} {
25
+ get nodes(): { [p: number]: E } {
25
26
  return this._nodes;
26
27
  }
27
28
 
@@ -156,7 +157,7 @@ export class ObjectDeque<E = number> {
156
157
  return this._size <= 0;
157
158
  }
158
159
 
159
- protected _seNodes(value: {[p: number]: E}) {
160
+ protected _seNodes(value: { [p: number]: E }) {
160
161
  this._nodes = value;
161
162
  }
162
163
 
@@ -183,7 +183,7 @@ export class Queue<E = any> {
183
183
  return new Queue(this.nodes.slice(this.offset));
184
184
  }
185
185
 
186
- *[Symbol.iterator]() {
186
+ * [Symbol.iterator]() {
187
187
  for (const item of this.nodes) {
188
188
  yield item;
189
189
  }
@@ -1,6 +1,6 @@
1
1
  export type Direction = 'up' | 'right' | 'down' | 'left';
2
2
 
3
- export type Turning = {[key in Direction]: Direction};
3
+ export type Turning = { [key in Direction]: Direction };
4
4
 
5
5
  export type NavigatorParams<T = any> = {
6
6
  matrix: T[][];
@@ -1,5 +1,5 @@
1
1
  export type ToThunkFn = () => ReturnType<TrlFn>;
2
- export type Thunk = () => ReturnType<ToThunkFn> & {__THUNK__: symbol};
2
+ export type Thunk = () => ReturnType<ToThunkFn> & { __THUNK__: symbol };
3
3
  export type TrlFn = (...args: any[]) => any;
4
4
  export type TrlAsyncFn = (...args: any[]) => any;
5
5
 
@@ -1,6 +1,6 @@
1
- export type KeyValueObject = {[key: string]: any};
1
+ export type KeyValueObject = { [key: string]: any };
2
2
 
3
- export type KeyValueObjectWithKey = {[key: string]: any; key: string | number | symbol};
3
+ export type KeyValueObjectWithKey = { [key: string]: any; key: string | number | symbol };
4
4
 
5
5
  export type NonNumberNonObjectButDefined = string | boolean | symbol | null;
6
6