data-structure-typed 1.38.0 → 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/dist/{data-structures → cjs/data-structures}/binary-tree/avl-tree.js +22 -22
- package/dist/cjs/data-structures/binary-tree/avl-tree.js.map +1 -0
- package/dist/cjs/data-structures/binary-tree/binary-indexed-tree.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/binary-tree.js +32 -32
- package/dist/cjs/data-structures/binary-tree/binary-tree.js.map +1 -0
- package/dist/cjs/data-structures/binary-tree/bst.js.map +1 -0
- package/dist/cjs/data-structures/binary-tree/index.js.map +1 -0
- package/dist/cjs/data-structures/binary-tree/rb-tree.js.map +1 -0
- package/dist/cjs/data-structures/binary-tree/segment-tree.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/tree-multiset.js +23 -23
- package/dist/cjs/data-structures/binary-tree/tree-multiset.js.map +1 -0
- package/dist/cjs/data-structures/graph/abstract-graph.js.map +1 -0
- package/dist/cjs/data-structures/graph/directed-graph.js.map +1 -0
- package/dist/cjs/data-structures/graph/index.js.map +1 -0
- package/dist/cjs/data-structures/graph/map-graph.js.map +1 -0
- package/dist/cjs/data-structures/graph/undirected-graph.js.map +1 -0
- package/dist/cjs/data-structures/hash/coordinate-map.js.map +1 -0
- package/dist/cjs/data-structures/hash/coordinate-set.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/hash/hash-map.js +59 -59
- package/dist/cjs/data-structures/hash/hash-map.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/hash/hash-table.js +99 -99
- package/dist/cjs/data-structures/hash/hash-table.js.map +1 -0
- package/dist/cjs/data-structures/hash/index.js.map +1 -0
- package/dist/cjs/data-structures/hash/tree-map.js.map +1 -0
- package/dist/cjs/data-structures/hash/tree-set.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/heap/heap.js +167 -167
- package/dist/cjs/data-structures/heap/heap.js.map +1 -0
- package/dist/cjs/data-structures/heap/index.js.map +1 -0
- package/dist/cjs/data-structures/heap/max-heap.js.map +1 -0
- package/dist/cjs/data-structures/heap/min-heap.js.map +1 -0
- package/dist/cjs/data-structures/index.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/doubly-linked-list.js +3 -3
- package/dist/cjs/data-structures/linked-list/doubly-linked-list.js.map +1 -0
- package/dist/cjs/data-structures/linked-list/index.js.map +1 -0
- package/dist/cjs/data-structures/linked-list/singly-linked-list.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/skip-linked-list.js +34 -34
- package/dist/cjs/data-structures/linked-list/skip-linked-list.js.map +1 -0
- package/dist/cjs/data-structures/matrix/index.js.map +1 -0
- package/dist/cjs/data-structures/matrix/matrix.js.map +1 -0
- package/{lib → dist/cjs}/data-structures/matrix/matrix2d.js +21 -13
- package/dist/cjs/data-structures/matrix/matrix2d.js.map +1 -0
- package/dist/cjs/data-structures/matrix/navigator.js.map +1 -0
- package/dist/cjs/data-structures/matrix/vector2d.js.map +1 -0
- package/dist/cjs/data-structures/priority-queue/index.js.map +1 -0
- package/dist/cjs/data-structures/priority-queue/max-priority-queue.js.map +1 -0
- package/dist/cjs/data-structures/priority-queue/min-priority-queue.js.map +1 -0
- package/dist/cjs/data-structures/priority-queue/priority-queue.js.map +1 -0
- package/dist/cjs/data-structures/queue/deque.js.map +1 -0
- package/dist/cjs/data-structures/queue/index.js.map +1 -0
- package/dist/cjs/data-structures/queue/queue.js.map +1 -0
- package/dist/cjs/data-structures/stack/index.js.map +1 -0
- package/dist/cjs/data-structures/stack/stack.js.map +1 -0
- package/dist/cjs/data-structures/tree/index.js.map +1 -0
- package/dist/cjs/data-structures/tree/tree.js.map +1 -0
- package/dist/cjs/data-structures/trie/index.js.map +1 -0
- package/dist/{data-structures → cjs/data-structures}/trie/trie.js +6 -6
- package/dist/cjs/data-structures/trie/trie.js.map +1 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/interfaces/binary-tree.js.map +1 -0
- package/dist/cjs/interfaces/doubly-linked-list.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/graph.js.map +1 -1
- package/dist/{interfaces → cjs/interfaces}/heap.js.map +1 -1
- package/dist/cjs/interfaces/index.js.map +1 -0
- package/dist/{interfaces → cjs/interfaces}/navigator.js.map +1 -1
- package/dist/cjs/interfaces/priority-queue.js.map +1 -0
- package/dist/cjs/interfaces/segment-tree.js.map +1 -0
- package/dist/cjs/interfaces/singly-linked-list.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/avl-tree.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/binary-indexed-tree.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/binary-tree.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/bst.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/index.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/rb-tree.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/segment-tree.js.map +1 -0
- package/dist/cjs/types/data-structures/binary-tree/tree-multiset.js.map +1 -0
- package/dist/cjs/types/data-structures/graph/abstract-graph.js.map +1 -0
- package/dist/cjs/types/data-structures/graph/directed-graph.js.map +1 -0
- package/dist/cjs/types/data-structures/graph/index.js.map +1 -0
- package/dist/cjs/types/data-structures/graph/map-graph.js.map +1 -0
- package/dist/cjs/types/data-structures/graph/undirected-graph.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/coordinate-map.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/coordinate-set.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/hash-map.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/hash-table.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/index.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/tree-map.js.map +1 -0
- package/dist/cjs/types/data-structures/hash/tree-set.js.map +1 -0
- package/dist/cjs/types/data-structures/heap/heap.js.map +1 -0
- package/dist/cjs/types/data-structures/heap/index.js.map +1 -0
- package/dist/cjs/types/data-structures/heap/max-heap.js.map +1 -0
- package/dist/cjs/types/data-structures/heap/min-heap.js.map +1 -0
- package/dist/cjs/types/data-structures/index.js.map +1 -0
- package/dist/cjs/types/data-structures/linked-list/doubly-linked-list.js.map +1 -0
- package/dist/cjs/types/data-structures/linked-list/index.js.map +1 -0
- package/dist/cjs/types/data-structures/linked-list/singly-linked-list.js.map +1 -0
- package/dist/cjs/types/data-structures/linked-list/skip-linked-list.js.map +1 -0
- package/dist/cjs/types/data-structures/matrix/index.js.map +1 -0
- package/dist/cjs/types/data-structures/matrix/matrix.js.map +1 -0
- package/dist/cjs/types/data-structures/matrix/matrix2d.js.map +1 -0
- package/dist/cjs/types/data-structures/matrix/navigator.js.map +1 -0
- package/dist/cjs/types/data-structures/matrix/vector2d.js.map +1 -0
- package/dist/cjs/types/data-structures/priority-queue/index.js.map +1 -0
- package/dist/cjs/types/data-structures/priority-queue/max-priority-queue.js.map +1 -0
- package/dist/cjs/types/data-structures/priority-queue/min-priority-queue.js.map +1 -0
- package/dist/cjs/types/data-structures/priority-queue/priority-queue.js.map +1 -0
- package/dist/cjs/types/data-structures/queue/deque.js.map +1 -0
- package/dist/cjs/types/data-structures/queue/index.js.map +1 -0
- package/dist/cjs/types/data-structures/queue/queue.js.map +1 -0
- package/dist/cjs/types/data-structures/stack/index.js.map +1 -0
- package/dist/cjs/types/data-structures/stack/stack.js.map +1 -0
- package/dist/cjs/types/data-structures/tree/index.js.map +1 -0
- package/dist/cjs/types/data-structures/tree/tree.js.map +1 -0
- package/dist/cjs/types/data-structures/trie/index.js.map +1 -0
- package/dist/cjs/types/data-structures/trie/trie.js.map +1 -0
- package/dist/cjs/types/helpers.js.map +1 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/utils/index.js.map +1 -0
- package/dist/{types → cjs/types}/utils/utils.js.map +1 -1
- package/dist/cjs/types/utils/validate-type.js.map +1 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/utils.js.map +1 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/avl-tree.js +32 -26
- package/{lib → dist/mjs}/data-structures/binary-tree/binary-indexed-tree.js +12 -3
- package/{lib → dist/mjs}/data-structures/binary-tree/binary-tree.js +90 -73
- package/{lib → dist/mjs}/data-structures/binary-tree/bst.js +42 -40
- package/dist/mjs/data-structures/binary-tree/index.js +23 -0
- package/dist/mjs/data-structures/binary-tree/rb-tree.js +28 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/segment-tree.js +17 -10
- package/{lib → dist/mjs}/data-structures/binary-tree/tree-multiset.js +42 -36
- package/{lib → dist/mjs}/data-structures/graph/abstract-graph.js +29 -24
- package/{lib → dist/mjs}/data-structures/graph/directed-graph.js +22 -14
- package/dist/mjs/data-structures/graph/index.js +20 -0
- package/{lib → dist/mjs}/data-structures/graph/map-graph.js +14 -5
- package/{lib → dist/mjs}/data-structures/graph/undirected-graph.js +19 -13
- package/{lib → dist/mjs}/data-structures/hash/coordinate-map.js +6 -2
- package/{lib → dist/mjs}/data-structures/hash/coordinate-set.js +6 -2
- package/{lib → dist/mjs}/data-structures/hash/hash-map.js +70 -60
- package/{lib → dist/mjs}/data-structures/hash/hash-table.js +115 -103
- package/dist/mjs/data-structures/hash/index.js +22 -0
- package/dist/mjs/data-structures/hash/tree-map.js +6 -0
- package/dist/mjs/data-structures/hash/tree-set.js +6 -0
- package/{lib → dist/mjs}/data-structures/heap/heap.js +188 -172
- package/dist/mjs/data-structures/heap/index.js +19 -0
- package/{lib → dist/mjs}/data-structures/heap/max-heap.js +6 -2
- package/{lib → dist/mjs}/data-structures/heap/min-heap.js +6 -2
- package/dist/mjs/data-structures/index.js +27 -0
- package/{lib → dist/mjs}/data-structures/linked-list/doubly-linked-list.js +18 -9
- package/dist/mjs/data-structures/linked-list/index.js +19 -0
- package/{lib → dist/mjs}/data-structures/linked-list/singly-linked-list.js +12 -2
- package/{lib → dist/mjs}/data-structures/linked-list/skip-linked-list.js +48 -36
- package/dist/mjs/data-structures/matrix/index.js +20 -0
- package/{lib → dist/mjs}/data-structures/matrix/matrix.js +6 -1
- package/dist/{data-structures → mjs/data-structures}/matrix/matrix2d.js +14 -11
- package/{lib → dist/mjs}/data-structures/matrix/navigator.js +14 -2
- package/{lib → dist/mjs}/data-structures/matrix/vector2d.js +9 -2
- package/dist/mjs/data-structures/priority-queue/index.js +19 -0
- package/{lib → dist/mjs}/data-structures/priority-queue/max-priority-queue.js +6 -2
- package/{lib → dist/mjs}/data-structures/priority-queue/min-priority-queue.js +6 -2
- package/dist/mjs/data-structures/priority-queue/priority-queue.js +17 -0
- package/{lib → dist/mjs}/data-structures/queue/deque.js +21 -22
- package/dist/mjs/data-structures/queue/index.js +18 -0
- package/{lib → dist/mjs}/data-structures/queue/queue.js +11 -5
- package/dist/mjs/data-structures/stack/index.js +17 -0
- package/{lib → dist/mjs}/data-structures/stack/stack.js +6 -1
- package/dist/mjs/data-structures/tree/index.js +17 -0
- package/{lib → dist/mjs}/data-structures/tree/tree.js +8 -1
- package/dist/mjs/data-structures/trie/index.js +17 -0
- package/{lib → dist/mjs}/data-structures/trie/trie.js +18 -8
- package/dist/mjs/index.js +20 -0
- package/dist/mjs/interfaces/binary-tree.js +2 -0
- package/dist/mjs/interfaces/doubly-linked-list.js +2 -0
- package/dist/mjs/interfaces/graph.js +2 -0
- package/dist/mjs/interfaces/heap.js +2 -0
- package/dist/mjs/interfaces/index.js +24 -0
- package/dist/mjs/interfaces/navigator.js +2 -0
- package/dist/mjs/interfaces/priority-queue.js +2 -0
- package/dist/mjs/interfaces/segment-tree.js +2 -0
- package/dist/mjs/interfaces/singly-linked-list.js +2 -0
- package/dist/mjs/types/data-structures/binary-tree/avl-tree.js +2 -0
- package/dist/mjs/types/data-structures/binary-tree/binary-indexed-tree.js +2 -0
- package/{lib → dist/mjs}/types/data-structures/binary-tree/binary-tree.js +7 -4
- package/dist/mjs/types/data-structures/binary-tree/bst.js +2 -0
- package/dist/mjs/types/data-structures/binary-tree/index.js +22 -0
- package/dist/mjs/types/data-structures/binary-tree/rb-tree.js +8 -0
- package/dist/mjs/types/data-structures/binary-tree/segment-tree.js +2 -0
- package/dist/mjs/types/data-structures/binary-tree/tree-multiset.js +2 -0
- package/dist/mjs/types/data-structures/graph/abstract-graph.js +2 -0
- package/dist/mjs/types/data-structures/graph/directed-graph.js +9 -0
- package/dist/mjs/types/data-structures/graph/index.js +19 -0
- package/dist/mjs/types/data-structures/graph/map-graph.js +2 -0
- package/dist/mjs/types/data-structures/graph/undirected-graph.js +2 -0
- package/dist/mjs/types/data-structures/hash/coordinate-map.js +2 -0
- package/dist/mjs/types/data-structures/hash/coordinate-set.js +2 -0
- package/dist/mjs/types/data-structures/hash/hash-map.js +2 -0
- package/dist/mjs/types/data-structures/hash/hash-table.js +2 -0
- package/dist/mjs/types/data-structures/hash/index.js +2 -0
- package/dist/mjs/types/data-structures/hash/tree-map.js +2 -0
- package/dist/mjs/types/data-structures/hash/tree-set.js +2 -0
- package/dist/mjs/types/data-structures/heap/heap.js +2 -0
- package/dist/mjs/types/data-structures/heap/index.js +17 -0
- package/dist/mjs/types/data-structures/heap/max-heap.js +2 -0
- package/dist/mjs/types/data-structures/heap/min-heap.js +2 -0
- package/dist/mjs/types/data-structures/index.js +27 -0
- package/dist/mjs/types/data-structures/linked-list/doubly-linked-list.js +2 -0
- package/dist/mjs/types/data-structures/linked-list/index.js +18 -0
- package/dist/mjs/types/data-structures/linked-list/singly-linked-list.js +2 -0
- package/dist/mjs/types/data-structures/linked-list/skip-linked-list.js +2 -0
- package/dist/mjs/types/data-structures/matrix/index.js +17 -0
- package/dist/mjs/types/data-structures/matrix/matrix.js +2 -0
- package/dist/mjs/types/data-structures/matrix/matrix2d.js +2 -0
- package/dist/mjs/types/data-structures/matrix/navigator.js +2 -0
- package/dist/mjs/types/data-structures/matrix/vector2d.js +2 -0
- package/dist/mjs/types/data-structures/priority-queue/index.js +19 -0
- package/dist/mjs/types/data-structures/priority-queue/max-priority-queue.js +2 -0
- package/dist/mjs/types/data-structures/priority-queue/min-priority-queue.js +2 -0
- package/dist/mjs/types/data-structures/priority-queue/priority-queue.js +2 -0
- package/dist/mjs/types/data-structures/queue/deque.js +2 -0
- package/dist/mjs/types/data-structures/queue/index.js +18 -0
- package/dist/mjs/types/data-structures/queue/queue.js +2 -0
- package/dist/mjs/types/data-structures/stack/index.js +17 -0
- package/dist/mjs/types/data-structures/stack/stack.js +2 -0
- package/dist/mjs/types/data-structures/tree/index.js +17 -0
- package/dist/mjs/types/data-structures/tree/tree.js +2 -0
- package/dist/mjs/types/data-structures/trie/index.js +17 -0
- package/dist/mjs/types/data-structures/trie/trie.js +2 -0
- package/dist/mjs/types/helpers.js +9 -0
- package/dist/mjs/types/index.js +19 -0
- package/dist/mjs/types/utils/index.js +18 -0
- package/dist/mjs/types/utils/utils.js +2 -0
- package/dist/mjs/types/utils/validate-type.js +2 -0
- package/dist/mjs/utils/index.js +17 -0
- package/dist/mjs/utils/utils.js +64 -0
- package/dist/umd/index.global.js +27 -0
- package/dist/umd/index.global.js.map +1 -0
- package/package.json +21 -23
- package/src/data-structures/binary-tree/avl-tree.ts +28 -28
- package/src/data-structures/binary-tree/binary-indexed-tree.ts +1 -1
- package/src/data-structures/binary-tree/binary-tree.ts +57 -57
- package/src/data-structures/binary-tree/bst.ts +4 -0
- package/src/data-structures/binary-tree/rb-tree.ts +2 -2
- package/src/data-structures/binary-tree/tree-multiset.ts +30 -31
- package/src/data-structures/graph/abstract-graph.ts +10 -11
- package/src/data-structures/graph/directed-graph.ts +1 -2
- package/src/data-structures/graph/undirected-graph.ts +4 -5
- package/src/data-structures/hash/hash-map.ts +82 -76
- package/src/data-structures/hash/hash-table.ts +112 -109
- package/src/data-structures/hash/tree-map.ts +2 -1
- package/src/data-structures/hash/tree-set.ts +2 -1
- package/src/data-structures/heap/heap.ts +182 -181
- package/src/data-structures/linked-list/doubly-linked-list.ts +4 -4
- package/src/data-structures/linked-list/singly-linked-list.ts +1 -1
- package/src/data-structures/linked-list/skip-linked-list.ts +45 -38
- package/src/data-structures/matrix/matrix.ts +1 -1
- package/src/data-structures/matrix/matrix2d.ts +10 -10
- package/src/data-structures/matrix/vector2d.ts +2 -1
- package/src/data-structures/queue/deque.ts +5 -4
- package/src/data-structures/queue/queue.ts +1 -1
- package/src/data-structures/trie/trie.ts +9 -9
- package/src/types/data-structures/matrix/navigator.ts +1 -1
- package/src/types/helpers.ts +5 -1
- package/src/types/utils/utils.ts +1 -1
- package/src/types/utils/validate-type.ts +2 -2
- package/test/integration/bst.test.ts +1 -1
- package/test/integration/index.html +1 -2
- package/test/unit/data-structures/binary-tree/avl-tree.test.ts +1 -1
- package/test/unit/data-structures/binary-tree/binary-index-tree.test.ts +3 -2
- package/test/unit/data-structures/binary-tree/bst.test.ts +3 -3
- package/test/unit/data-structures/binary-tree/overall.test.ts +1 -1
- package/test/unit/data-structures/binary-tree/tree-multiset.test.ts +1 -1
- package/test/unit/data-structures/hash/hash-table.test.ts +1 -1
- package/test/unit/data-structures/heap/heap.test.ts +2 -2
- package/test/unit/data-structures/linked-list/doubly-linked-list.test.ts +1 -1
- package/test/unit/data-structures/linked-list/singly-linked-list.test.ts +2 -2
- package/test/unit/data-structures/matrix/navigator.test.ts +1 -1
- package/test/unit/data-structures/priority-queue/max-priority-queue.test.ts +2 -2
- package/test/unit/data-structures/queue/deque.test.ts +1 -1
- package/test/unit/data-structures/queue/queue.test.ts +1 -1
- package/test/utils/big-o.ts +1 -1
- package/tsconfig-base.json +27 -0
- package/tsconfig-cjs.json +9 -0
- package/tsup.config.js +11 -0
- package/umd/bundle.min.js +1 -1
- package/umd/bundle.min.js.map +1 -1
- package/dist/data-structures/binary-tree/avl-tree.js.map +0 -1
- package/dist/data-structures/binary-tree/binary-indexed-tree.js.map +0 -1
- package/dist/data-structures/binary-tree/binary-tree.js.map +0 -1
- package/dist/data-structures/binary-tree/bst.js.map +0 -1
- package/dist/data-structures/binary-tree/index.js.map +0 -1
- package/dist/data-structures/binary-tree/rb-tree.js.map +0 -1
- package/dist/data-structures/binary-tree/segment-tree.js.map +0 -1
- package/dist/data-structures/binary-tree/tree-multiset.js.map +0 -1
- package/dist/data-structures/graph/abstract-graph.js.map +0 -1
- package/dist/data-structures/graph/directed-graph.js.map +0 -1
- package/dist/data-structures/graph/index.js.map +0 -1
- package/dist/data-structures/graph/map-graph.js.map +0 -1
- package/dist/data-structures/graph/undirected-graph.js.map +0 -1
- package/dist/data-structures/hash/coordinate-map.js.map +0 -1
- package/dist/data-structures/hash/coordinate-set.js.map +0 -1
- package/dist/data-structures/hash/hash-map.js.map +0 -1
- package/dist/data-structures/hash/hash-table.js.map +0 -1
- package/dist/data-structures/hash/index.js.map +0 -1
- package/dist/data-structures/hash/tree-map.js.map +0 -1
- package/dist/data-structures/hash/tree-set.js.map +0 -1
- package/dist/data-structures/heap/heap.js.map +0 -1
- package/dist/data-structures/heap/index.js.map +0 -1
- package/dist/data-structures/heap/max-heap.js.map +0 -1
- package/dist/data-structures/heap/min-heap.js.map +0 -1
- package/dist/data-structures/index.js.map +0 -1
- package/dist/data-structures/linked-list/doubly-linked-list.js.map +0 -1
- package/dist/data-structures/linked-list/index.js.map +0 -1
- package/dist/data-structures/linked-list/singly-linked-list.js.map +0 -1
- package/dist/data-structures/linked-list/skip-linked-list.js.map +0 -1
- package/dist/data-structures/matrix/index.js.map +0 -1
- package/dist/data-structures/matrix/matrix.js.map +0 -1
- package/dist/data-structures/matrix/matrix2d.js.map +0 -1
- package/dist/data-structures/matrix/navigator.js.map +0 -1
- package/dist/data-structures/matrix/vector2d.js.map +0 -1
- package/dist/data-structures/priority-queue/index.js.map +0 -1
- package/dist/data-structures/priority-queue/max-priority-queue.js.map +0 -1
- package/dist/data-structures/priority-queue/min-priority-queue.js.map +0 -1
- package/dist/data-structures/priority-queue/priority-queue.js.map +0 -1
- package/dist/data-structures/queue/deque.js.map +0 -1
- package/dist/data-structures/queue/index.js.map +0 -1
- package/dist/data-structures/queue/queue.js.map +0 -1
- package/dist/data-structures/stack/index.js.map +0 -1
- package/dist/data-structures/stack/stack.js.map +0 -1
- package/dist/data-structures/tree/index.js.map +0 -1
- package/dist/data-structures/tree/tree.js.map +0 -1
- package/dist/data-structures/trie/index.js.map +0 -1
- package/dist/data-structures/trie/trie.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/interfaces/binary-tree.js.map +0 -1
- package/dist/interfaces/doubly-linked-list.js.map +0 -1
- package/dist/interfaces/index.js.map +0 -1
- package/dist/interfaces/priority-queue.js.map +0 -1
- package/dist/interfaces/segment-tree.js.map +0 -1
- package/dist/interfaces/singly-linked-list.js.map +0 -1
- package/dist/types/data-structures/binary-tree/avl-tree.js.map +0 -1
- package/dist/types/data-structures/binary-tree/binary-indexed-tree.js.map +0 -1
- package/dist/types/data-structures/binary-tree/binary-tree.js.map +0 -1
- package/dist/types/data-structures/binary-tree/bst.js.map +0 -1
- package/dist/types/data-structures/binary-tree/index.js.map +0 -1
- package/dist/types/data-structures/binary-tree/rb-tree.js.map +0 -1
- package/dist/types/data-structures/binary-tree/segment-tree.js.map +0 -1
- package/dist/types/data-structures/binary-tree/tree-multiset.js.map +0 -1
- package/dist/types/data-structures/graph/abstract-graph.js.map +0 -1
- package/dist/types/data-structures/graph/directed-graph.js.map +0 -1
- package/dist/types/data-structures/graph/index.js.map +0 -1
- package/dist/types/data-structures/graph/map-graph.js.map +0 -1
- package/dist/types/data-structures/graph/undirected-graph.js.map +0 -1
- package/dist/types/data-structures/hash/coordinate-map.js.map +0 -1
- package/dist/types/data-structures/hash/coordinate-set.js.map +0 -1
- package/dist/types/data-structures/hash/hash-map.js.map +0 -1
- package/dist/types/data-structures/hash/hash-table.js.map +0 -1
- package/dist/types/data-structures/hash/index.js.map +0 -1
- package/dist/types/data-structures/hash/tree-map.js.map +0 -1
- package/dist/types/data-structures/hash/tree-set.js.map +0 -1
- package/dist/types/data-structures/heap/heap.js.map +0 -1
- package/dist/types/data-structures/heap/index.js.map +0 -1
- package/dist/types/data-structures/heap/max-heap.js.map +0 -1
- package/dist/types/data-structures/heap/min-heap.js.map +0 -1
- package/dist/types/data-structures/index.js.map +0 -1
- package/dist/types/data-structures/linked-list/doubly-linked-list.js.map +0 -1
- package/dist/types/data-structures/linked-list/index.js.map +0 -1
- package/dist/types/data-structures/linked-list/singly-linked-list.js.map +0 -1
- package/dist/types/data-structures/linked-list/skip-linked-list.js.map +0 -1
- package/dist/types/data-structures/matrix/index.js.map +0 -1
- package/dist/types/data-structures/matrix/matrix.js.map +0 -1
- package/dist/types/data-structures/matrix/matrix2d.js.map +0 -1
- package/dist/types/data-structures/matrix/navigator.js.map +0 -1
- package/dist/types/data-structures/matrix/vector2d.js.map +0 -1
- package/dist/types/data-structures/priority-queue/index.js.map +0 -1
- package/dist/types/data-structures/priority-queue/max-priority-queue.js.map +0 -1
- package/dist/types/data-structures/priority-queue/min-priority-queue.js.map +0 -1
- package/dist/types/data-structures/priority-queue/priority-queue.js.map +0 -1
- package/dist/types/data-structures/queue/deque.js.map +0 -1
- package/dist/types/data-structures/queue/index.js.map +0 -1
- package/dist/types/data-structures/queue/queue.js.map +0 -1
- package/dist/types/data-structures/stack/index.js.map +0 -1
- package/dist/types/data-structures/stack/stack.js.map +0 -1
- package/dist/types/data-structures/tree/index.js.map +0 -1
- package/dist/types/data-structures/tree/tree.js.map +0 -1
- package/dist/types/data-structures/trie/index.js.map +0 -1
- package/dist/types/data-structures/trie/trie.js.map +0 -1
- package/dist/types/helpers.js.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/types/utils/index.js.map +0 -1
- package/dist/types/utils/validate-type.js.map +0 -1
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/utils.js.map +0 -1
- package/lib/data-structures/binary-tree/index.js +0 -7
- package/lib/data-structures/binary-tree/rb-tree.js +0 -22
- package/lib/data-structures/graph/index.js +0 -4
- package/lib/data-structures/hash/index.js +0 -6
- package/lib/data-structures/hash/tree-map.js +0 -2
- package/lib/data-structures/hash/tree-set.js +0 -2
- package/lib/data-structures/heap/index.js +0 -3
- package/lib/data-structures/index.js +0 -11
- package/lib/data-structures/linked-list/index.js +0 -3
- package/lib/data-structures/matrix/index.js +0 -4
- package/lib/data-structures/priority-queue/index.js +0 -3
- package/lib/data-structures/priority-queue/priority-queue.js +0 -13
- package/lib/data-structures/queue/index.js +0 -2
- package/lib/data-structures/stack/index.js +0 -1
- package/lib/data-structures/tree/index.js +0 -1
- package/lib/data-structures/trie/index.js +0 -1
- package/lib/index.js +0 -4
- package/lib/interfaces/binary-tree.js +0 -1
- package/lib/interfaces/doubly-linked-list.js +0 -1
- package/lib/interfaces/graph.js +0 -1
- package/lib/interfaces/heap.js +0 -1
- package/lib/interfaces/index.js +0 -8
- package/lib/interfaces/navigator.js +0 -1
- package/lib/interfaces/priority-queue.js +0 -1
- package/lib/interfaces/segment-tree.js +0 -1
- package/lib/interfaces/singly-linked-list.js +0 -1
- package/lib/types/data-structures/binary-tree/avl-tree.js +0 -1
- package/lib/types/data-structures/binary-tree/binary-indexed-tree.js +0 -1
- package/lib/types/data-structures/binary-tree/bst.js +0 -1
- package/lib/types/data-structures/binary-tree/index.js +0 -6
- package/lib/types/data-structures/binary-tree/rb-tree.js +0 -5
- package/lib/types/data-structures/binary-tree/segment-tree.js +0 -1
- package/lib/types/data-structures/binary-tree/tree-multiset.js +0 -1
- package/lib/types/data-structures/graph/abstract-graph.js +0 -1
- package/lib/types/data-structures/graph/directed-graph.js +0 -6
- package/lib/types/data-structures/graph/index.js +0 -3
- package/lib/types/data-structures/graph/map-graph.js +0 -1
- package/lib/types/data-structures/graph/undirected-graph.js +0 -1
- package/lib/types/data-structures/hash/coordinate-map.js +0 -1
- package/lib/types/data-structures/hash/coordinate-set.js +0 -1
- package/lib/types/data-structures/hash/hash-map.js +0 -1
- package/lib/types/data-structures/hash/hash-table.js +0 -1
- package/lib/types/data-structures/hash/index.js +0 -1
- package/lib/types/data-structures/hash/tree-map.js +0 -1
- package/lib/types/data-structures/hash/tree-set.js +0 -1
- package/lib/types/data-structures/heap/heap.js +0 -1
- package/lib/types/data-structures/heap/index.js +0 -1
- package/lib/types/data-structures/heap/max-heap.js +0 -1
- package/lib/types/data-structures/heap/min-heap.js +0 -1
- package/lib/types/data-structures/index.js +0 -11
- package/lib/types/data-structures/linked-list/doubly-linked-list.js +0 -1
- package/lib/types/data-structures/linked-list/index.js +0 -2
- package/lib/types/data-structures/linked-list/singly-linked-list.js +0 -1
- package/lib/types/data-structures/linked-list/skip-linked-list.js +0 -1
- package/lib/types/data-structures/matrix/index.js +0 -1
- package/lib/types/data-structures/matrix/matrix.js +0 -1
- package/lib/types/data-structures/matrix/matrix2d.js +0 -1
- package/lib/types/data-structures/matrix/navigator.js +0 -1
- package/lib/types/data-structures/matrix/vector2d.js +0 -1
- package/lib/types/data-structures/priority-queue/index.js +0 -3
- package/lib/types/data-structures/priority-queue/max-priority-queue.js +0 -1
- package/lib/types/data-structures/priority-queue/min-priority-queue.js +0 -1
- package/lib/types/data-structures/priority-queue/priority-queue.js +0 -1
- package/lib/types/data-structures/queue/deque.js +0 -1
- package/lib/types/data-structures/queue/index.js +0 -2
- package/lib/types/data-structures/queue/queue.js +0 -1
- package/lib/types/data-structures/stack/index.js +0 -1
- package/lib/types/data-structures/stack/stack.js +0 -1
- package/lib/types/data-structures/tree/index.js +0 -1
- package/lib/types/data-structures/tree/tree.js +0 -1
- package/lib/types/data-structures/trie/index.js +0 -1
- package/lib/types/data-structures/trie/trie.js +0 -1
- package/lib/types/helpers.js +0 -6
- package/lib/types/index.js +0 -3
- package/lib/types/utils/index.js +0 -2
- package/lib/types/utils/utils.js +0 -1
- package/lib/types/utils/validate-type.js +0 -1
- package/lib/utils/index.js +0 -1
- package/lib/utils/utils.js +0 -63
- package/dist/{data-structures → cjs/data-structures}/binary-tree/avl-tree.d.ts +9 -9
- package/dist/{data-structures → cjs/data-structures}/binary-tree/binary-indexed-tree.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/binary-indexed-tree.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/binary-tree.d.ts +31 -31
- package/dist/{data-structures → cjs/data-structures}/binary-tree/bst.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/bst.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/rb-tree.d.ts +1 -1
- package/dist/{data-structures → cjs/data-structures}/binary-tree/rb-tree.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/segment-tree.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/segment-tree.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/binary-tree/tree-multiset.d.ts +9 -9
- package/dist/{data-structures → cjs/data-structures}/graph/abstract-graph.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/abstract-graph.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/directed-graph.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/directed-graph.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/map-graph.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/map-graph.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/undirected-graph.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/graph/undirected-graph.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/coordinate-map.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/coordinate-map.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/coordinate-set.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/coordinate-set.js +0 -0
- package/{lib → dist/cjs}/data-structures/hash/hash-map.d.ts +25 -25
- package/{lib → dist/cjs}/data-structures/hash/hash-table.d.ts +34 -34
- package/dist/{data-structures → cjs/data-structures}/hash/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/tree-map.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/tree-map.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/tree-set.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/hash/tree-set.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/heap.d.ts +66 -66
- package/dist/{data-structures → cjs/data-structures}/heap/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/max-heap.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/max-heap.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/min-heap.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/heap/min-heap.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/index.js +0 -0
- package/{lib → dist/cjs}/data-structures/linked-list/doubly-linked-list.d.ts +1 -1
- package/dist/{data-structures → cjs/data-structures}/linked-list/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/singly-linked-list.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/singly-linked-list.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/linked-list/skip-linked-list.d.ts +17 -17
- package/dist/{data-structures → cjs/data-structures}/matrix/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/matrix.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/matrix.js +0 -0
- package/{lib → dist/cjs}/data-structures/matrix/matrix2d.d.ts +7 -7
- package/dist/{data-structures → cjs/data-structures}/matrix/navigator.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/navigator.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/vector2d.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/matrix/vector2d.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/max-priority-queue.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/max-priority-queue.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/min-priority-queue.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/min-priority-queue.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/priority-queue.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/priority-queue/priority-queue.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/deque.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/deque.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/queue.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/queue/queue.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/stack/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/stack/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/stack/stack.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/stack/stack.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/tree/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/tree/index.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/tree/tree.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/tree/tree.js +0 -0
- package/dist/{data-structures → cjs/data-structures}/trie/index.d.ts +0 -0
- package/dist/{data-structures → cjs/data-structures}/trie/index.js +0 -0
- package/{lib → dist/cjs}/data-structures/trie/trie.d.ts +2 -2
- package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
- package/dist/{index.js → cjs/index.js} +0 -0
- package/dist/{interfaces → cjs/interfaces}/binary-tree.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/binary-tree.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/doubly-linked-list.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/doubly-linked-list.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/graph.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/graph.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/heap.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/heap.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/index.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/index.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/navigator.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/navigator.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/priority-queue.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/priority-queue.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/segment-tree.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/segment-tree.js +0 -0
- package/dist/{interfaces → cjs/interfaces}/singly-linked-list.d.ts +0 -0
- package/dist/{interfaces → cjs/interfaces}/singly-linked-list.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/avl-tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/avl-tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/binary-indexed-tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/binary-indexed-tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/binary-tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/binary-tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/bst.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/bst.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/rb-tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/rb-tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/segment-tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/segment-tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/tree-multiset.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/binary-tree/tree-multiset.js +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/abstract-graph.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/abstract-graph.js +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/directed-graph.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/directed-graph.js +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/map-graph.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/map-graph.js +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/undirected-graph.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/graph/undirected-graph.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/coordinate-map.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/coordinate-map.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/coordinate-set.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/coordinate-set.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/hash-map.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/hash-map.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/hash-table.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/hash-table.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/tree-map.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/tree-map.js +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/tree-set.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/hash/tree-set.js +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/heap.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/heap.js +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/max-heap.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/max-heap.js +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/min-heap.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/heap/min-heap.js +0 -0
- package/dist/{types → cjs/types}/data-structures/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/doubly-linked-list.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/doubly-linked-list.js +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/singly-linked-list.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/singly-linked-list.js +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/skip-linked-list.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/linked-list/skip-linked-list.js +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/matrix.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/matrix.js +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/matrix2d.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/matrix2d.js +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/navigator.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/navigator.js +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/vector2d.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/matrix/vector2d.js +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/max-priority-queue.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/max-priority-queue.js +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/min-priority-queue.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/min-priority-queue.js +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/priority-queue.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/priority-queue/priority-queue.js +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/deque.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/deque.js +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/queue.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/queue/queue.js +0 -0
- package/dist/{types → cjs/types}/data-structures/stack/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/stack/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/stack/stack.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/stack/stack.js +0 -0
- package/dist/{types → cjs/types}/data-structures/tree/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/tree/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/tree/tree.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/tree/tree.js +0 -0
- package/dist/{types → cjs/types}/data-structures/trie/index.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/trie/index.js +0 -0
- package/dist/{types → cjs/types}/data-structures/trie/trie.d.ts +0 -0
- package/dist/{types → cjs/types}/data-structures/trie/trie.js +0 -0
- package/dist/{types → cjs/types}/helpers.d.ts +0 -0
- package/dist/{types → cjs/types}/helpers.js +0 -0
- package/dist/{types → cjs/types}/index.d.ts +0 -0
- package/dist/{types → cjs/types}/index.js +0 -0
- package/dist/{types → cjs/types}/utils/index.d.ts +0 -0
- package/dist/{types → cjs/types}/utils/index.js +0 -0
- package/dist/{types → cjs/types}/utils/utils.d.ts +0 -0
- package/dist/{types → cjs/types}/utils/utils.js +0 -0
- package/dist/{types → cjs/types}/utils/validate-type.d.ts +0 -0
- package/dist/{types → cjs/types}/utils/validate-type.js +0 -0
- package/dist/{utils → cjs/utils}/index.d.ts +0 -0
- package/dist/{utils → cjs/utils}/index.js +0 -0
- package/dist/{utils → cjs/utils}/utils.d.ts +0 -0
- package/dist/{utils → cjs/utils}/utils.js +0 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/avl-tree.d.ts +9 -9
- package/{lib → dist/mjs}/data-structures/binary-tree/binary-indexed-tree.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/binary-tree.d.ts +31 -31
- package/{lib → dist/mjs}/data-structures/binary-tree/bst.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/rb-tree.d.ts +1 -1
- package/{lib → dist/mjs}/data-structures/binary-tree/segment-tree.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/binary-tree/tree-multiset.d.ts +9 -9
- package/{lib → dist/mjs}/data-structures/graph/abstract-graph.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/graph/directed-graph.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/graph/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/graph/map-graph.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/graph/undirected-graph.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/hash/coordinate-map.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/hash/coordinate-set.d.ts +0 -0
- package/dist/{data-structures → mjs/data-structures}/hash/hash-map.d.ts +25 -25
- package/dist/{data-structures → mjs/data-structures}/hash/hash-table.d.ts +34 -34
- package/{lib → dist/mjs}/data-structures/hash/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/hash/tree-map.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/hash/tree-set.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/heap/heap.d.ts +66 -66
- package/{lib → dist/mjs}/data-structures/heap/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/heap/max-heap.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/heap/min-heap.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/index.d.ts +0 -0
- package/dist/{data-structures → mjs/data-structures}/linked-list/doubly-linked-list.d.ts +1 -1
- package/{lib → dist/mjs}/data-structures/linked-list/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/linked-list/singly-linked-list.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/linked-list/skip-linked-list.d.ts +17 -17
- package/{lib → dist/mjs}/data-structures/matrix/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/matrix/matrix.d.ts +0 -0
- package/dist/{data-structures → mjs/data-structures}/matrix/matrix2d.d.ts +7 -7
- package/{lib → dist/mjs}/data-structures/matrix/navigator.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/matrix/vector2d.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/priority-queue/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/priority-queue/max-priority-queue.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/priority-queue/min-priority-queue.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/priority-queue/priority-queue.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/queue/deque.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/queue/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/queue/queue.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/stack/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/stack/stack.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/tree/index.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/tree/tree.d.ts +0 -0
- package/{lib → dist/mjs}/data-structures/trie/index.d.ts +0 -0
- package/dist/{data-structures → mjs/data-structures}/trie/trie.d.ts +2 -2
- /package/{lib → dist/mjs}/index.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/binary-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/doubly-linked-list.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/graph.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/heap.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/index.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/navigator.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/priority-queue.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/segment-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/interfaces/singly-linked-list.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/avl-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/binary-indexed-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/binary-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/bst.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/rb-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/segment-tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/binary-tree/tree-multiset.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/graph/abstract-graph.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/graph/directed-graph.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/graph/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/graph/map-graph.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/graph/undirected-graph.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/coordinate-map.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/coordinate-set.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/hash-map.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/hash-table.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/tree-map.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/hash/tree-set.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/heap/heap.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/heap/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/heap/max-heap.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/heap/min-heap.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/linked-list/doubly-linked-list.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/linked-list/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/linked-list/singly-linked-list.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/linked-list/skip-linked-list.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/matrix/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/matrix/matrix.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/matrix/matrix2d.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/matrix/navigator.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/matrix/vector2d.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/priority-queue/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/priority-queue/max-priority-queue.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/priority-queue/min-priority-queue.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/priority-queue/priority-queue.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/queue/deque.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/queue/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/queue/queue.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/stack/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/stack/stack.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/tree/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/tree/tree.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/trie/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/data-structures/trie/trie.d.ts +0 -0
- /package/{lib → dist/mjs}/types/helpers.d.ts +0 -0
- /package/{lib → dist/mjs}/types/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/utils/index.d.ts +0 -0
- /package/{lib → dist/mjs}/types/utils/utils.d.ts +0 -0
- /package/{lib → dist/mjs}/types/utils/validate-type.d.ts +0 -0
- /package/{lib → dist/mjs}/utils/index.d.ts +0 -0
- /package/{lib → dist/mjs}/utils/utils.d.ts +0 -0
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -20,15 +20,6 @@ export declare class AVLTree<N extends AVLTreeNode<N['val'], N> = AVLTreeNode> e
|
|
|
20
20
|
* options.
|
|
21
21
|
*/
|
|
22
22
|
constructor(options?: AVLTreeOptions);
|
|
23
|
-
/**
|
|
24
|
-
* The function swaps the key, value, and height properties between two nodes in a binary tree.
|
|
25
|
-
* @param {N} srcNode - The `srcNode` parameter represents the source node that needs to be swapped
|
|
26
|
-
* with the `destNode`.
|
|
27
|
-
* @param {N} destNode - The `destNode` parameter represents the destination node where the values
|
|
28
|
-
* from the source node (`srcNode`) will be swapped to.
|
|
29
|
-
* @returns The method is returning the `destNode` after swapping its properties with the `srcNode`.
|
|
30
|
-
*/
|
|
31
|
-
protected _swap(srcNode: N, destNode: N): N;
|
|
32
23
|
/**
|
|
33
24
|
* The function creates a new AVL tree node with the specified key and value.
|
|
34
25
|
* @param {BinaryTreeNodeKey} key - The key parameter is the key value that will be associated with
|
|
@@ -57,6 +48,15 @@ export declare class AVLTree<N extends AVLTreeNode<N['val'], N> = AVLTreeNode> e
|
|
|
57
48
|
* @returns The method is returning an array of `BinaryTreeDeletedResult<N>` objects.
|
|
58
49
|
*/
|
|
59
50
|
delete(nodeOrKey: N | BinaryTreeNodeKey): BinaryTreeDeletedResult<N>[];
|
|
51
|
+
/**
|
|
52
|
+
* The function swaps the key, value, and height properties between two nodes in a binary tree.
|
|
53
|
+
* @param {N} srcNode - The `srcNode` parameter represents the source node that needs to be swapped
|
|
54
|
+
* with the `destNode`.
|
|
55
|
+
* @param {N} destNode - The `destNode` parameter represents the destination node where the values
|
|
56
|
+
* from the source node (`srcNode`) will be swapped to.
|
|
57
|
+
* @returns The method is returning the `destNode` after swapping its properties with the `srcNode`.
|
|
58
|
+
*/
|
|
59
|
+
protected _swap(srcNode: N, destNode: N): N;
|
|
60
60
|
/**
|
|
61
61
|
* The function calculates the balance factor of a node in a binary tree.
|
|
62
62
|
* @param {N} node - The parameter "node" represents a node in a binary tree data structure.
|
|
File without changes
|
|
@@ -14,12 +14,6 @@ import { IBinaryTree } from '../../interfaces';
|
|
|
14
14
|
* @template FAMILY - The type of the family relationship in the binary tree.
|
|
15
15
|
*/
|
|
16
16
|
export declare class BinaryTreeNode<V = any, FAMILY extends BinaryTreeNode<V, FAMILY> = BinaryTreeNodeNested<V>> {
|
|
17
|
-
/**
|
|
18
|
-
* Creates a new instance of BinaryTreeNode.
|
|
19
|
-
* @param {BinaryTreeNodeKey} key - The key associated with the node.
|
|
20
|
-
* @param {V} val - The value stored in the node.
|
|
21
|
-
*/
|
|
22
|
-
constructor(key: BinaryTreeNodeKey, val?: V);
|
|
23
17
|
/**
|
|
24
18
|
* The key associated with the node.
|
|
25
19
|
*/
|
|
@@ -28,6 +22,16 @@ export declare class BinaryTreeNode<V = any, FAMILY extends BinaryTreeNode<V, FA
|
|
|
28
22
|
* The value stored in the node.
|
|
29
23
|
*/
|
|
30
24
|
val: V | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* The parent node of the current node.
|
|
27
|
+
*/
|
|
28
|
+
parent: FAMILY | null | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Creates a new instance of BinaryTreeNode.
|
|
31
|
+
* @param {BinaryTreeNodeKey} key - The key associated with the node.
|
|
32
|
+
* @param {V} val - The value stored in the node.
|
|
33
|
+
*/
|
|
34
|
+
constructor(key: BinaryTreeNodeKey, val?: V);
|
|
31
35
|
private _left;
|
|
32
36
|
/**
|
|
33
37
|
* Get the left child node.
|
|
@@ -48,10 +52,6 @@ export declare class BinaryTreeNode<V = any, FAMILY extends BinaryTreeNode<V, FA
|
|
|
48
52
|
* @param {FAMILY | null | undefined} v - The right child node.
|
|
49
53
|
*/
|
|
50
54
|
set right(v: FAMILY | null | undefined);
|
|
51
|
-
/**
|
|
52
|
-
* The parent node of the current node.
|
|
53
|
-
*/
|
|
54
|
-
parent: FAMILY | null | undefined;
|
|
55
55
|
/**
|
|
56
56
|
* Get the position of the node within its family.
|
|
57
57
|
* @returns {FamilyPosition} - The family position of the node.
|
|
@@ -63,18 +63,12 @@ export declare class BinaryTreeNode<V = any, FAMILY extends BinaryTreeNode<V, FA
|
|
|
63
63
|
* @template N - The type of the binary tree's nodes.
|
|
64
64
|
*/
|
|
65
65
|
export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTreeNode> implements IBinaryTree<N> {
|
|
66
|
+
private _loopType;
|
|
66
67
|
/**
|
|
67
68
|
* Creates a new instance of BinaryTree.
|
|
68
69
|
* @param {BinaryTreeOptions} [options] - The options for the binary tree.
|
|
69
70
|
*/
|
|
70
71
|
constructor(options?: BinaryTreeOptions);
|
|
71
|
-
/**
|
|
72
|
-
* Creates a new instance of BinaryTreeNode with the given key and value.
|
|
73
|
-
* @param {BinaryTreeNodeKey} key - The key for the new node.
|
|
74
|
-
* @param {N['val']} val - The value for the new node.
|
|
75
|
-
* @returns {N} - The newly created BinaryTreeNode.
|
|
76
|
-
*/
|
|
77
|
-
createNode(key: BinaryTreeNodeKey, val?: N['val']): N;
|
|
78
72
|
private _root;
|
|
79
73
|
/**
|
|
80
74
|
* Get the root node of the binary tree.
|
|
@@ -85,7 +79,6 @@ export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTr
|
|
|
85
79
|
* Get the number of nodes in the binary tree.
|
|
86
80
|
*/
|
|
87
81
|
get size(): number;
|
|
88
|
-
private _loopType;
|
|
89
82
|
/**
|
|
90
83
|
* Get the iteration type used in the binary tree.
|
|
91
84
|
*/
|
|
@@ -96,12 +89,12 @@ export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTr
|
|
|
96
89
|
*/
|
|
97
90
|
set iterationType(v: IterationType);
|
|
98
91
|
/**
|
|
99
|
-
*
|
|
100
|
-
* @param {
|
|
101
|
-
* @param {N}
|
|
102
|
-
* @returns {N} - The
|
|
92
|
+
* Creates a new instance of BinaryTreeNode with the given key and value.
|
|
93
|
+
* @param {BinaryTreeNodeKey} key - The key for the new node.
|
|
94
|
+
* @param {N['val']} val - The value for the new node.
|
|
95
|
+
* @returns {N} - The newly created BinaryTreeNode.
|
|
103
96
|
*/
|
|
104
|
-
|
|
97
|
+
createNode(key: BinaryTreeNodeKey, val?: N['val']): N;
|
|
105
98
|
/**
|
|
106
99
|
* Clear the binary tree, removing all nodes.
|
|
107
100
|
*/
|
|
@@ -174,7 +167,6 @@ export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTr
|
|
|
174
167
|
* @returns the height of the binary tree.
|
|
175
168
|
*/
|
|
176
169
|
getHeight(beginRoot?: N | BinaryTreeNodeKey | null, iterationType?: IterationType): number;
|
|
177
|
-
protected _defaultCallbackByKey: MapCallback<N>;
|
|
178
170
|
/**
|
|
179
171
|
* The `getMinHeight` function calculates the minimum height of a binary tree using either a
|
|
180
172
|
* recursive or iterative approach.
|
|
@@ -359,13 +351,6 @@ export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTr
|
|
|
359
351
|
* @returns The function `getPredecessor` returns the predecessor node of the given node `node`.
|
|
360
352
|
*/
|
|
361
353
|
getPredecessor(node: N): N;
|
|
362
|
-
/**
|
|
363
|
-
* Time complexity is O(n)
|
|
364
|
-
* Space complexity of Iterative dfs equals to recursive dfs which is O(n) because of the stack
|
|
365
|
-
* The Morris algorithm only modifies the tree's structure during traversal; once the traversal is complete,
|
|
366
|
-
* the tree's structure should be restored to its original state to maintain the tree's integrity.
|
|
367
|
-
* This is because the purpose of the Morris algorithm is to save space rather than permanently alter the tree's shape.
|
|
368
|
-
*/
|
|
369
354
|
/**
|
|
370
355
|
* The `morris` function performs a depth-first traversal of a binary tree using the Morris traversal
|
|
371
356
|
* algorithm and returns an array of values obtained by applying a callback function to each node.
|
|
@@ -381,6 +366,21 @@ export declare class BinaryTree<N extends BinaryTreeNode<N['val'], N> = BinaryTr
|
|
|
381
366
|
* @returns The `morris` function returns an array of `MapCallbackReturn<N>` values.
|
|
382
367
|
*/
|
|
383
368
|
morris(callback?: MapCallback<N>, pattern?: DFSOrderPattern, beginRoot?: N | null): MapCallbackReturn<N>[];
|
|
369
|
+
/**
|
|
370
|
+
* Swap the data of two nodes in the binary tree.
|
|
371
|
+
* @param {N} srcNode - The source node to swap.
|
|
372
|
+
* @param {N} destNode - The destination node to swap.
|
|
373
|
+
* @returns {N} - The destination node after the swap.
|
|
374
|
+
*/
|
|
375
|
+
protected _swap(srcNode: N, destNode: N): N;
|
|
376
|
+
/**
|
|
377
|
+
* Time complexity is O(n)
|
|
378
|
+
* Space complexity of Iterative dfs equals to recursive dfs which is O(n) because of the stack
|
|
379
|
+
* The Morris algorithm only modifies the tree's structure during traversal; once the traversal is complete,
|
|
380
|
+
* the tree's structure should be restored to its original state to maintain the tree's integrity.
|
|
381
|
+
* This is because the purpose of the Morris algorithm is to save space rather than permanently alter the tree's shape.
|
|
382
|
+
*/
|
|
383
|
+
protected _defaultCallbackByKey: MapCallback<N>;
|
|
384
384
|
/**
|
|
385
385
|
* The function `_addTo` adds a new node to a binary tree if there is an available position.
|
|
386
386
|
* @param {N | null} newNode - The `newNode` parameter represents the node that you want to add to
|
|
File without changes
|
|
File without changes
|
|
@@ -2,8 +2,8 @@ import { BinaryTreeNodeKey, RBColor, RBTreeNodeNested, RBTreeOptions } from '../
|
|
|
2
2
|
import { IBinaryTree } from '../../interfaces';
|
|
3
3
|
import { BST, BSTNode } from './bst';
|
|
4
4
|
export declare class RBTreeNode<V = any, FAMILY extends RBTreeNode<V, FAMILY> = RBTreeNodeNested<V>> extends BSTNode<V, FAMILY> {
|
|
5
|
-
private _color;
|
|
6
5
|
constructor(key: BinaryTreeNodeKey, val?: V);
|
|
6
|
+
private _color;
|
|
7
7
|
get color(): RBColor;
|
|
8
8
|
set color(value: RBColor);
|
|
9
9
|
}
|
|
File without changes
|
|
@@ -10,6 +10,7 @@ import { BinaryTreeDeletedResult, IterationType } from '../../types';
|
|
|
10
10
|
import { IBinaryTree } from '../../interfaces';
|
|
11
11
|
import { AVLTree, AVLTreeNode } from './avl-tree';
|
|
12
12
|
export declare class TreeMultisetNode<V = any, FAMILY extends TreeMultisetNode<V, FAMILY> = TreeMultisetNodeNested<V>> extends AVLTreeNode<V, FAMILY> {
|
|
13
|
+
count: number;
|
|
13
14
|
/**
|
|
14
15
|
* The constructor function initializes a BinaryTreeNode object with a key, value, and count.
|
|
15
16
|
* @param {BinaryTreeNodeKey} key - The `key` parameter is of type `BinaryTreeNodeKey` and represents the unique identifier
|
|
@@ -21,7 +22,6 @@ export declare class TreeMultisetNode<V = any, FAMILY extends TreeMultisetNode<V
|
|
|
21
22
|
* parameter when creating a new instance of the `BinaryTreeNode` class.
|
|
22
23
|
*/
|
|
23
24
|
constructor(key: BinaryTreeNodeKey, val?: V, count?: number);
|
|
24
|
-
count: number;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
27
|
* The only distinction between a TreeMultiset and a AVLTree lies in the ability of the former to store duplicate nodes through the utilization of counters.
|
|
@@ -46,14 +46,6 @@ export declare class TreeMultiset<N extends TreeMultisetNode<N['val'], N> = Tree
|
|
|
46
46
|
* @returns A new instance of the BSTNode class with the specified key, value, and count (if provided).
|
|
47
47
|
*/
|
|
48
48
|
createNode(key: BinaryTreeNodeKey, val?: N['val'], count?: number): N;
|
|
49
|
-
/**
|
|
50
|
-
* The function swaps the values of two nodes in a binary tree.
|
|
51
|
-
* @param {N} srcNode - The source node that needs to be swapped with the destination node.
|
|
52
|
-
* @param {N} destNode - The `destNode` parameter represents the destination node where the values
|
|
53
|
-
* from `srcNode` will be swapped into.
|
|
54
|
-
* @returns The method is returning the `destNode` after swapping its properties with the `srcNode`.
|
|
55
|
-
*/
|
|
56
|
-
protected _swap(srcNode: N, destNode: N): N;
|
|
57
49
|
/**
|
|
58
50
|
* The `add` function adds a new node to a binary search tree, updating the count if the key already
|
|
59
51
|
* exists, and balancing the tree if necessary.
|
|
@@ -114,6 +106,14 @@ export declare class TreeMultiset<N extends TreeMultisetNode<N['val'], N> = Tree
|
|
|
114
106
|
* The clear() function clears the contents of a data structure and sets the count to zero.
|
|
115
107
|
*/
|
|
116
108
|
clear(): void;
|
|
109
|
+
/**
|
|
110
|
+
* The function swaps the values of two nodes in a binary tree.
|
|
111
|
+
* @param {N} srcNode - The source node that needs to be swapped with the destination node.
|
|
112
|
+
* @param {N} destNode - The `destNode` parameter represents the destination node where the values
|
|
113
|
+
* from `srcNode` will be swapped into.
|
|
114
|
+
* @returns The method is returning the `destNode` after swapping its properties with the `srcNode`.
|
|
115
|
+
*/
|
|
116
|
+
protected _swap(srcNode: N, destNode: N): N;
|
|
117
117
|
/**
|
|
118
118
|
* The function sets the value of the "_count" property.
|
|
119
119
|
* @param {number} v - number
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -7,24 +7,6 @@ import { HashFunction } from '../../types';
|
|
|
7
7
|
* @license MIT License
|
|
8
8
|
*/
|
|
9
9
|
export declare class HashMap<K, V> {
|
|
10
|
-
get hashFn(): HashFunction<K>;
|
|
11
|
-
set hashFn(value: HashFunction<K>);
|
|
12
|
-
get table(): Array<Array<[K, V]>>;
|
|
13
|
-
set table(value: Array<Array<[K, V]>>);
|
|
14
|
-
get capacityMultiplier(): number;
|
|
15
|
-
set capacityMultiplier(value: number);
|
|
16
|
-
get loadFactor(): number;
|
|
17
|
-
set loadFactor(value: number);
|
|
18
|
-
get initialCapacity(): number;
|
|
19
|
-
set initialCapacity(value: number);
|
|
20
|
-
get size(): number;
|
|
21
|
-
set size(value: number);
|
|
22
|
-
private _initialCapacity;
|
|
23
|
-
private _loadFactor;
|
|
24
|
-
private _capacityMultiplier;
|
|
25
|
-
private _size;
|
|
26
|
-
private _table;
|
|
27
|
-
private _hashFn;
|
|
28
10
|
/**
|
|
29
11
|
* The constructor initializes the properties of a hash table, including the initial capacity, load factor, capacity
|
|
30
12
|
* multiplier, size, table array, and hash function.
|
|
@@ -38,6 +20,31 @@ export declare class HashMap<K, V> {
|
|
|
38
20
|
* default hash function converts the key to a string, calculates the sum of the
|
|
39
21
|
*/
|
|
40
22
|
constructor(initialCapacity?: number, loadFactor?: number, hashFn?: HashFunction<K>);
|
|
23
|
+
private _initialCapacity;
|
|
24
|
+
get initialCapacity(): number;
|
|
25
|
+
set initialCapacity(value: number);
|
|
26
|
+
private _loadFactor;
|
|
27
|
+
get loadFactor(): number;
|
|
28
|
+
set loadFactor(value: number);
|
|
29
|
+
private _capacityMultiplier;
|
|
30
|
+
get capacityMultiplier(): number;
|
|
31
|
+
set capacityMultiplier(value: number);
|
|
32
|
+
private _size;
|
|
33
|
+
get size(): number;
|
|
34
|
+
set size(value: number);
|
|
35
|
+
private _table;
|
|
36
|
+
get table(): Array<Array<[K, V]>>;
|
|
37
|
+
set table(value: Array<Array<[K, V]>>);
|
|
38
|
+
private _hashFn;
|
|
39
|
+
get hashFn(): HashFunction<K>;
|
|
40
|
+
set hashFn(value: HashFunction<K>);
|
|
41
|
+
set(key: K, value: V): void;
|
|
42
|
+
get(key: K): V | undefined;
|
|
43
|
+
delete(key: K): void;
|
|
44
|
+
entries(): IterableIterator<[K, V]>;
|
|
45
|
+
[Symbol.iterator](): IterableIterator<[K, V]>;
|
|
46
|
+
clear(): void;
|
|
47
|
+
isEmpty(): boolean;
|
|
41
48
|
private _hash;
|
|
42
49
|
/**
|
|
43
50
|
* The `resizeTable` function resizes the table used in a hash map by creating a new table with a specified capacity and
|
|
@@ -46,11 +53,4 @@ export declare class HashMap<K, V> {
|
|
|
46
53
|
* the number of buckets that the new table should have.
|
|
47
54
|
*/
|
|
48
55
|
private resizeTable;
|
|
49
|
-
set(key: K, value: V): void;
|
|
50
|
-
get(key: K): V | undefined;
|
|
51
|
-
delete(key: K): void;
|
|
52
|
-
entries(): IterableIterator<[K, V]>;
|
|
53
|
-
[Symbol.iterator](): IterableIterator<[K, V]>;
|
|
54
|
-
clear(): void;
|
|
55
|
-
isEmpty(): boolean;
|
|
56
56
|
}
|
|
@@ -13,19 +13,46 @@ export declare class HashTableNode<K, V> {
|
|
|
13
13
|
}
|
|
14
14
|
import { HashFunction } from '../../types';
|
|
15
15
|
export declare class HashTable<K, V> {
|
|
16
|
-
get hashFn(): HashFunction<K>;
|
|
17
|
-
set hashFn(value: HashFunction<K>);
|
|
18
|
-
get buckets(): Array<HashTableNode<K, V> | null>;
|
|
19
|
-
set buckets(value: Array<HashTableNode<K, V> | null>);
|
|
20
|
-
get capacity(): number;
|
|
21
|
-
set capacity(value: number);
|
|
22
16
|
private static readonly DEFAULT_CAPACITY;
|
|
23
17
|
private static readonly LOAD_FACTOR;
|
|
18
|
+
constructor(capacity?: number, hashFn?: HashFunction<K>);
|
|
24
19
|
private _capacity;
|
|
20
|
+
get capacity(): number;
|
|
21
|
+
set capacity(value: number);
|
|
25
22
|
private _size;
|
|
23
|
+
get size(): number;
|
|
26
24
|
private _buckets;
|
|
25
|
+
get buckets(): Array<HashTableNode<K, V> | null>;
|
|
26
|
+
set buckets(value: Array<HashTableNode<K, V> | null>);
|
|
27
27
|
private _hashFn;
|
|
28
|
-
|
|
28
|
+
get hashFn(): HashFunction<K>;
|
|
29
|
+
set hashFn(value: HashFunction<K>);
|
|
30
|
+
/**
|
|
31
|
+
* The set function adds a key-value pair to the hash table, handling collisions and resizing if necessary.
|
|
32
|
+
* @param {K} key - The key parameter represents the key of the key-value pair that you want to insert into the hash
|
|
33
|
+
* table. It is of type K, which is a generic type representing the key's data type.
|
|
34
|
+
* @param {V} val - The parameter `val` represents the value that you want to associate with the given key in the hash
|
|
35
|
+
* table.
|
|
36
|
+
* @returns Nothing is being returned. The return type of the `put` method is `void`, which means it does not return any
|
|
37
|
+
* value.
|
|
38
|
+
*/
|
|
39
|
+
set(key: K, val: V): void;
|
|
40
|
+
/**
|
|
41
|
+
* The `get` function retrieves the value associated with a given key from a hash table.
|
|
42
|
+
* @param {K} key - The `key` parameter represents the key of the element that we want to retrieve from the data
|
|
43
|
+
* structure.
|
|
44
|
+
* @returns The method is returning the value associated with the given key if it exists in the hash table. If the key is
|
|
45
|
+
* not found, it returns `undefined`.
|
|
46
|
+
*/
|
|
47
|
+
get(key: K): V | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* The delete function removes a key-value pair from a hash table.
|
|
50
|
+
* @param {K} key - The `key` parameter represents the key of the key-value pair that needs to be removed from the hash
|
|
51
|
+
* table.
|
|
52
|
+
* @returns Nothing is being returned. The `delete` method has a return type of `void`, which means it does not return
|
|
53
|
+
* any value.
|
|
54
|
+
*/
|
|
55
|
+
delete(key: K): void;
|
|
29
56
|
/**
|
|
30
57
|
* The function `_defaultHashFn` calculates the hash value of a given key and returns the remainder when divided by the
|
|
31
58
|
* capacity of the data structure.
|
|
@@ -71,36 +98,9 @@ export declare class HashTable<K, V> {
|
|
|
71
98
|
* @returns a number, which is the hash value of the key.
|
|
72
99
|
*/
|
|
73
100
|
protected _objectHash(key: K): number;
|
|
74
|
-
/**
|
|
75
|
-
* The set function adds a key-value pair to the hash table, handling collisions and resizing if necessary.
|
|
76
|
-
* @param {K} key - The key parameter represents the key of the key-value pair that you want to insert into the hash
|
|
77
|
-
* table. It is of type K, which is a generic type representing the key's data type.
|
|
78
|
-
* @param {V} val - The parameter `val` represents the value that you want to associate with the given key in the hash
|
|
79
|
-
* table.
|
|
80
|
-
* @returns Nothing is being returned. The return type of the `put` method is `void`, which means it does not return any
|
|
81
|
-
* value.
|
|
82
|
-
*/
|
|
83
|
-
set(key: K, val: V): void;
|
|
84
|
-
/**
|
|
85
|
-
* The `get` function retrieves the value associated with a given key from a hash table.
|
|
86
|
-
* @param {K} key - The `key` parameter represents the key of the element that we want to retrieve from the data
|
|
87
|
-
* structure.
|
|
88
|
-
* @returns The method is returning the value associated with the given key if it exists in the hash table. If the key is
|
|
89
|
-
* not found, it returns `undefined`.
|
|
90
|
-
*/
|
|
91
|
-
get(key: K): V | undefined;
|
|
92
|
-
/**
|
|
93
|
-
* The delete function removes a key-value pair from a hash table.
|
|
94
|
-
* @param {K} key - The `key` parameter represents the key of the key-value pair that needs to be removed from the hash
|
|
95
|
-
* table.
|
|
96
|
-
* @returns Nothing is being returned. The `delete` method has a return type of `void`, which means it does not return
|
|
97
|
-
* any value.
|
|
98
|
-
*/
|
|
99
|
-
delete(key: K): void;
|
|
100
101
|
/**
|
|
101
102
|
* The `expand` function increases the capacity of a hash table by creating a new array of buckets with double the
|
|
102
103
|
* capacity and rehashing all the existing key-value pairs into the new buckets.
|
|
103
104
|
*/
|
|
104
105
|
protected _expand(): void;
|
|
105
|
-
get size(): number;
|
|
106
106
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|