data-structure-typed 1.16.1 → 1.17.0

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.
Files changed (94) hide show
  1. package/README.md +1 -1
  2. package/dist/data-structures/linked-list/doubly-linked-list.d.ts +195 -68
  3. package/dist/data-structures/linked-list/doubly-linked-list.js +456 -244
  4. package/dist/data-structures/linked-list/singly-linked-list.d.ts +126 -241
  5. package/dist/data-structures/linked-list/singly-linked-list.js +331 -628
  6. package/dist/data-structures/types/binary-tree.d.ts +0 -5
  7. package/docs/assets/search.js +1 -1
  8. package/docs/classes/AVLTree.html +93 -94
  9. package/docs/classes/AVLTreeNode.html +36 -37
  10. package/docs/classes/AaTree.html +1 -2
  11. package/docs/classes/AbstractEdge.html +11 -12
  12. package/docs/classes/AbstractGraph.html +29 -30
  13. package/docs/classes/AbstractVertex.html +6 -7
  14. package/docs/classes/ArrayDeque.html +14 -15
  15. package/docs/classes/BST.html +86 -87
  16. package/docs/classes/BSTNode.html +36 -37
  17. package/docs/classes/BTree.html +1 -2
  18. package/docs/classes/BinaryIndexedTree.html +7 -8
  19. package/docs/classes/BinaryTree.html +82 -83
  20. package/docs/classes/BinaryTreeNode.html +36 -37
  21. package/docs/classes/Character.html +4 -5
  22. package/docs/classes/CoordinateMap.html +10 -11
  23. package/docs/classes/CoordinateSet.html +9 -10
  24. package/docs/classes/Deque.html +496 -366
  25. package/docs/classes/DirectedEdge.html +17 -18
  26. package/docs/classes/DirectedGraph.html +41 -42
  27. package/docs/classes/DirectedVertex.html +6 -7
  28. package/docs/classes/DoublyLinkedList.html +479 -321
  29. package/docs/classes/DoublyLinkedListNode.html +52 -36
  30. package/docs/classes/Heap.html +20 -21
  31. package/docs/classes/HeapItem.html +8 -9
  32. package/docs/classes/Matrix2D.html +16 -17
  33. package/docs/classes/MatrixNTI2D.html +4 -5
  34. package/docs/classes/MaxHeap.html +20 -21
  35. package/docs/classes/MaxPriorityQueue.html +34 -35
  36. package/docs/classes/MinHeap.html +20 -21
  37. package/docs/classes/MinPriorityQueue.html +34 -35
  38. package/docs/classes/Navigator.html +10 -11
  39. package/docs/classes/ObjectDeque.html +25 -26
  40. package/docs/classes/PriorityQueue.html +32 -33
  41. package/docs/classes/Queue.html +14 -15
  42. package/docs/classes/RBTree.html +1 -2
  43. package/docs/classes/SegmentTree.html +12 -13
  44. package/docs/classes/SegmentTreeNode.html +26 -27
  45. package/docs/classes/SinglyLinkedList.html +248 -635
  46. package/docs/classes/SinglyLinkedListNode.html +39 -167
  47. package/docs/classes/SplayTree.html +1 -2
  48. package/docs/classes/Stack.html +12 -13
  49. package/docs/classes/TreeMultiSet.html +86 -87
  50. package/docs/classes/TreeNode.html +8 -9
  51. package/docs/classes/Trie.html +13 -14
  52. package/docs/classes/TrieNode.html +11 -12
  53. package/docs/classes/TwoThreeTree.html +1 -2
  54. package/docs/classes/UndirectedEdge.html +13 -14
  55. package/docs/classes/UndirectedGraph.html +35 -36
  56. package/docs/classes/UndirectedVertex.html +6 -7
  57. package/docs/classes/Vector2D.html +28 -29
  58. package/docs/enums/CP.html +4 -5
  59. package/docs/enums/FamilyPosition.html +4 -5
  60. package/docs/enums/LoopType.html +3 -4
  61. package/docs/index.html +2 -3
  62. package/docs/interfaces/AVLTreeDeleted.html +3 -4
  63. package/docs/interfaces/HeapOptions.html +2 -3
  64. package/docs/interfaces/IDirectedGraph.html +7 -8
  65. package/docs/interfaces/IGraph.html +19 -20
  66. package/docs/interfaces/NavigatorParams.html +5 -6
  67. package/docs/interfaces/PriorityQueueOptions.html +4 -5
  68. package/docs/modules.html +0 -2
  69. package/docs/types/BSTComparator.html +1 -2
  70. package/docs/types/BSTDeletedResult.html +1 -2
  71. package/docs/types/BinaryTreeDeleted.html +1 -2
  72. package/docs/types/BinaryTreeNodeId.html +1 -2
  73. package/docs/types/BinaryTreeNodePropertyName.html +1 -2
  74. package/docs/types/DFSOrderPattern.html +1 -2
  75. package/docs/types/DijkstraResult.html +1 -2
  76. package/docs/types/Direction.html +1 -2
  77. package/docs/types/DoublyLinkedListGetBy.html +1 -2
  78. package/docs/types/NodeOrPropertyName.html +1 -2
  79. package/docs/types/PriorityQueueComparator.html +1 -2
  80. package/docs/types/PriorityQueueDFSOrderPattern.html +1 -2
  81. package/docs/types/ResultByProperty.html +1 -2
  82. package/docs/types/ResultsByProperty.html +1 -2
  83. package/docs/types/SegmentTreeNodeVal.html +1 -2
  84. package/docs/types/SpecifyOptional.html +1 -2
  85. package/docs/types/Thunk.html +1 -2
  86. package/docs/types/ToThunkFn.html +1 -2
  87. package/docs/types/TopologicalStatus.html +1 -2
  88. package/docs/types/TreeMultiSetDeletedResult.html +1 -2
  89. package/docs/types/TrlAsyncFn.html +1 -2
  90. package/docs/types/TrlFn.html +1 -2
  91. package/docs/types/Turning.html +1 -2
  92. package/docs/types/VertexId.html +1 -2
  93. package/package.json +1 -3
  94. package/docs/interfaces/BinaryTreeNodeObj.html +0 -168
@@ -27,7 +27,7 @@
27
27
  <ul class="tsd-hierarchy">
28
28
  <li><a href="Deque.html" class="tsd-signature-type tsd-kind-class">Deque</a></li></ul></li></ul></section><aside class="tsd-sources">
29
29
  <ul>
30
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L48">src/data-structures/linked-list/doubly-linked-list.ts:48</a></li></ul></aside>
30
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L52">src/data-structures/linked-list/doubly-linked-list.ts:52</a></li></ul></aside>
31
31
  <section class="tsd-panel-group tsd-index-group">
32
32
  <section class="tsd-panel tsd-index-panel">
33
33
  <details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
@@ -39,32 +39,43 @@
39
39
  </div></section>
40
40
  <section class="tsd-index-section">
41
41
  <h3 class="tsd-index-heading">Properties</h3>
42
- <div class="tsd-index-list"><a href="DoublyLinkedList.html#_first" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>_first</span></a>
43
- <a href="DoublyLinkedList.html#_last" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_last</span></a>
44
- <a href="DoublyLinkedList.html#_size" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_size</span></a>
42
+ <div class="tsd-index-list"><a href="DoublyLinkedList.html#_head" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>_head</span></a>
43
+ <a href="DoublyLinkedList.html#_length" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_length</span></a>
44
+ <a href="DoublyLinkedList.html#_tail" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_tail</span></a>
45
45
  </div></section>
46
46
  <section class="tsd-index-section">
47
47
  <h3 class="tsd-index-heading">Accessors</h3>
48
- <div class="tsd-index-list"><a href="DoublyLinkedList.html#first" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-262144"><rect fill="var(--color-icon-background)" stroke="#FF4D4D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M8.85 16L11.13 7.24H12.582L14.85 16H13.758L13.182 13.672H10.53L9.954 16H8.85ZM10.746 12.76H12.954L12.282 10.06C12.154 9.548 12.054 9.12 11.982 8.776C11.91 8.432 11.866 8.208 11.85 8.104C11.834 8.208 11.79 8.432 11.718 8.776C11.646 9.12 11.546 9.544 11.418 10.048L10.746 12.76Z" fill="var(--color-text)"></path></g></svg><span>first</span></a>
49
- <a href="DoublyLinkedList.html#last" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>last</span></a>
50
- <a href="DoublyLinkedList.html#size" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>size</span></a>
48
+ <div class="tsd-index-list"><a href="DoublyLinkedList.html#head" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-262144"><rect fill="var(--color-icon-background)" stroke="#FF4D4D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M8.85 16L11.13 7.24H12.582L14.85 16H13.758L13.182 13.672H10.53L9.954 16H8.85ZM10.746 12.76H12.954L12.282 10.06C12.154 9.548 12.054 9.12 11.982 8.776C11.91 8.432 11.866 8.208 11.85 8.104C11.834 8.208 11.79 8.432 11.718 8.776C11.646 9.12 11.546 9.544 11.418 10.048L10.746 12.76Z" fill="var(--color-text)"></path></g></svg><span>head</span></a>
49
+ <a href="DoublyLinkedList.html#length" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>length</span></a>
50
+ <a href="DoublyLinkedList.html#tail" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>tail</span></a>
51
51
  </div></section>
52
52
  <section class="tsd-index-section">
53
53
  <h3 class="tsd-index-heading">Methods</h3>
54
- <div class="tsd-index-list"><a href="DoublyLinkedList.html#addFirst" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>add<wbr/>First</span></a>
55
- <a href="DoublyLinkedList.html#addLast" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Last</span></a>
56
- <a href="DoublyLinkedList.html#get" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get</span></a>
57
- <a href="DoublyLinkedList.html#getFirst" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>First</span></a>
58
- <a href="DoublyLinkedList.html#getLast" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Last</span></a>
59
- <a href="DoublyLinkedList.html#getSize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Size</span></a>
54
+ <div class="tsd-index-list"><a href="DoublyLinkedList.html#clear" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>clear</span></a>
55
+ <a href="DoublyLinkedList.html#delete" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>delete</span></a>
56
+ <a href="DoublyLinkedList.html#deleteAt" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>delete<wbr/>At</span></a>
57
+ <a href="DoublyLinkedList.html#filter" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>filter</span></a>
58
+ <a href="DoublyLinkedList.html#find" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find</span></a>
59
+ <a href="DoublyLinkedList.html#findLast" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find<wbr/>Last</span></a>
60
+ <a href="DoublyLinkedList.html#findNode" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find<wbr/>Node</span></a>
61
+ <a href="DoublyLinkedList.html#forEach" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>for<wbr/>Each</span></a>
62
+ <a href="DoublyLinkedList.html#getAt" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>At</span></a>
63
+ <a href="DoublyLinkedList.html#getLength" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Length</span></a>
64
+ <a href="DoublyLinkedList.html#getNodeAt" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Node<wbr/>At</span></a>
65
+ <a href="DoublyLinkedList.html#indexOf" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>index<wbr/>Of</span></a>
60
66
  <a href="DoublyLinkedList.html#insert" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert</span></a>
61
- <a href="DoublyLinkedList.html#isEmpty" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Empty</span></a>
62
- <a href="DoublyLinkedList.html#peekFirst" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>peek<wbr/>First</span></a>
63
- <a href="DoublyLinkedList.html#peekLast" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>peek<wbr/>Last</span></a>
64
- <a href="DoublyLinkedList.html#pollFirst" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>poll<wbr/>First</span></a>
65
- <a href="DoublyLinkedList.html#pollLast" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>poll<wbr/>Last</span></a>
66
- <a href="DoublyLinkedList.html#remove" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove</span></a>
67
- <a href="DoublyLinkedList.html#set" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set</span></a>
67
+ <a href="DoublyLinkedList.html#insertAfter" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert<wbr/>After</span></a>
68
+ <a href="DoublyLinkedList.html#insertBefore" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert<wbr/>Before</span></a>
69
+ <a href="DoublyLinkedList.html#map" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>map</span></a>
70
+ <a href="DoublyLinkedList.html#pop" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pop</span></a>
71
+ <a href="DoublyLinkedList.html#push" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>push</span></a>
72
+ <a href="DoublyLinkedList.html#reduce" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>reduce</span></a>
73
+ <a href="DoublyLinkedList.html#reverse" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>reverse</span></a>
74
+ <a href="DoublyLinkedList.html#shift" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>shift</span></a>
75
+ <a href="DoublyLinkedList.html#toArray" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>to<wbr/>Array</span></a>
76
+ <a href="DoublyLinkedList.html#toArrayReverse" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>to<wbr/>Array<wbr/>Reverse</span></a>
77
+ <a href="DoublyLinkedList.html#unshift" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>unshift</span></a>
78
+ <a href="DoublyLinkedList.html#fromArray" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>from<wbr/>Array</span></a>
68
79
  </div></section></div></details></section></section>
69
80
  <section class="tsd-panel-group tsd-member-group">
70
81
  <h2>Constructors</h2>
@@ -73,534 +84,671 @@
73
84
  <ul class="tsd-signatures">
74
85
  <li class="tsd-signature tsd-anchor-link" id="constructor.new_DoublyLinkedList"><span class="tsd-kind-constructor-signature">new <wbr/>Doubly<wbr/>Linked<wbr/>List</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#constructor.new_DoublyLinkedList" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
75
86
  <li class="tsd-description">
87
+ <div class="tsd-comment tsd-typography"><p>The constructor initializes the linked list with an empty head, tail, and length.</p>
88
+ </div>
76
89
  <section class="tsd-panel">
77
90
  <h4>Type Parameters</h4>
78
91
  <ul class="tsd-type-parameter-list">
79
92
  <li>
80
93
  <h4><span class="tsd-kind-type-parameter">T</span></h4></li></ul></section>
81
- <h4 class="tsd-returns-title">Returns <a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
94
+ <h4 class="tsd-returns-title">Returns <a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4>
95
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
82
96
  <ul>
83
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L49">src/data-structures/linked-list/doubly-linked-list.ts:49</a></li></ul></aside></li></ul></section></section>
97
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L57">src/data-structures/linked-list/doubly-linked-list.ts:57</a></li></ul></aside></li></ul></section></section>
84
98
  <section class="tsd-panel-group tsd-member-group">
85
99
  <h2>Properties</h2>
86
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_first" class="tsd-anchor"></a>
87
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_first</span><a href="#_first" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
88
- <div class="tsd-signature"><span class="tsd-kind-property">_first</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
100
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_head" class="tsd-anchor"></a>
101
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_head</span><a href="#_head" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
102
+ <div class="tsd-signature"><span class="tsd-kind-property">_head</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
89
103
  <ul>
90
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L55">src/data-structures/linked-list/doubly-linked-list.ts:55</a></li></ul></aside></section>
91
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_last" class="tsd-anchor"></a>
92
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_last</span><a href="#_last" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
93
- <div class="tsd-signature"><span class="tsd-kind-property">_last</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
104
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L63">src/data-structures/linked-list/doubly-linked-list.ts:63</a></li></ul></aside></section>
105
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_length" class="tsd-anchor"></a>
106
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_length</span><a href="#_length" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
107
+ <div class="tsd-signature"><span class="tsd-kind-property">_length</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
94
108
  <ul>
95
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L65">src/data-structures/linked-list/doubly-linked-list.ts:65</a></li></ul></aside></section>
96
- <section class="tsd-panel tsd-member tsd-is-protected"><a id="_size" class="tsd-anchor"></a>
97
- <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>_size</span><a href="#_size" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
98
- <div class="tsd-signature"><span class="tsd-kind-property">_size</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources">
109
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L83">src/data-structures/linked-list/doubly-linked-list.ts:83</a></li></ul></aside></section>
110
+ <section class="tsd-panel tsd-member tsd-is-private"><a id="_tail" class="tsd-anchor"></a>
111
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagPrivate">Private</code> <span>_tail</span><a href="#_tail" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
112
+ <div class="tsd-signature"><span class="tsd-kind-property">_tail</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources">
99
113
  <ul>
100
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L74">src/data-structures/linked-list/doubly-linked-list.ts:74</a></li></ul></aside></section></section>
114
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L73">src/data-structures/linked-list/doubly-linked-list.ts:73</a></li></ul></aside></section></section>
101
115
  <section class="tsd-panel-group tsd-member-group">
102
116
  <h2>Accessors</h2>
103
- <section class="tsd-panel tsd-member"><a id="first" class="tsd-anchor"></a>
104
- <h3 class="tsd-anchor-link"><span>first</span><a href="#first" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
117
+ <section class="tsd-panel tsd-member"><a id="head" class="tsd-anchor"></a>
118
+ <h3 class="tsd-anchor-link"><span>head</span><a href="#head" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
105
119
  <ul class="tsd-signatures">
106
- <li class="tsd-signature" id="first.first-1"><span class="tsd-signature-symbol">get</span> first<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></li>
120
+ <li class="tsd-signature" id="head.head-1"><span class="tsd-signature-symbol">get</span> head<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></li>
107
121
  <li class="tsd-description">
108
122
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
109
123
  <ul>
110
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L57">src/data-structures/linked-list/doubly-linked-list.ts:57</a></li></ul></aside></li>
111
- <li class="tsd-signature" id="first.first-2"><span class="tsd-signature-symbol">set</span> first<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
124
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L65">src/data-structures/linked-list/doubly-linked-list.ts:65</a></li></ul></aside></li>
125
+ <li class="tsd-signature" id="head.head-2"><span class="tsd-signature-symbol">set</span> head<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
112
126
  <li class="tsd-description">
113
127
  <div class="tsd-parameters">
114
128
  <h4 class="tsd-parameters-title">Parameters</h4>
115
129
  <ul class="tsd-parameter-list">
116
130
  <li>
117
- <h5><span class="tsd-kind-parameter">v</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
131
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
118
132
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
119
133
  <ul>
120
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L61">src/data-structures/linked-list/doubly-linked-list.ts:61</a></li></ul></aside></li></ul></section>
121
- <section class="tsd-panel tsd-member"><a id="last" class="tsd-anchor"></a>
122
- <h3 class="tsd-anchor-link"><span>last</span><a href="#last" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
134
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L69">src/data-structures/linked-list/doubly-linked-list.ts:69</a></li></ul></aside></li></ul></section>
135
+ <section class="tsd-panel tsd-member"><a id="length" class="tsd-anchor"></a>
136
+ <h3 class="tsd-anchor-link"><span>length</span><a href="#length" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
123
137
  <ul class="tsd-signatures">
124
- <li class="tsd-signature" id="last.last-1"><span class="tsd-signature-symbol">get</span> last<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></li>
138
+ <li class="tsd-signature" id="length.length-1"><span class="tsd-signature-symbol">get</span> length<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
125
139
  <li class="tsd-description">
126
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
140
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
127
141
  <ul>
128
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L66">src/data-structures/linked-list/doubly-linked-list.ts:66</a></li></ul></aside></li>
129
- <li class="tsd-signature" id="last.last-2"><span class="tsd-signature-symbol">set</span> last<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
142
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L85">src/data-structures/linked-list/doubly-linked-list.ts:85</a></li></ul></aside></li>
143
+ <li class="tsd-signature" id="length.length-2"><span class="tsd-signature-symbol">set</span> length<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
130
144
  <li class="tsd-description">
131
145
  <div class="tsd-parameters">
132
146
  <h4 class="tsd-parameters-title">Parameters</h4>
133
147
  <ul class="tsd-parameter-list">
134
148
  <li>
135
- <h5><span class="tsd-kind-parameter">v</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
149
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
136
150
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
137
151
  <ul>
138
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L70">src/data-structures/linked-list/doubly-linked-list.ts:70</a></li></ul></aside></li></ul></section>
139
- <section class="tsd-panel tsd-member"><a id="size" class="tsd-anchor"></a>
140
- <h3 class="tsd-anchor-link"><span>size</span><a href="#size" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
152
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L89">src/data-structures/linked-list/doubly-linked-list.ts:89</a></li></ul></aside></li></ul></section>
153
+ <section class="tsd-panel tsd-member"><a id="tail" class="tsd-anchor"></a>
154
+ <h3 class="tsd-anchor-link"><span>tail</span><a href="#tail" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
141
155
  <ul class="tsd-signatures">
142
- <li class="tsd-signature" id="size.size-1"><span class="tsd-signature-symbol">get</span> size<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
156
+ <li class="tsd-signature" id="tail.tail-1"><span class="tsd-signature-symbol">get</span> tail<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></li>
143
157
  <li class="tsd-description">
144
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
158
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
145
159
  <ul>
146
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L76">src/data-structures/linked-list/doubly-linked-list.ts:76</a></li></ul></aside></li>
147
- <li class="tsd-signature" id="size.size-2"><span class="tsd-signature-symbol">set</span> size<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">v</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
160
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L75">src/data-structures/linked-list/doubly-linked-list.ts:75</a></li></ul></aside></li>
161
+ <li class="tsd-signature" id="tail.tail-2"><span class="tsd-signature-symbol">set</span> tail<span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
148
162
  <li class="tsd-description">
149
163
  <div class="tsd-parameters">
150
164
  <h4 class="tsd-parameters-title">Parameters</h4>
151
165
  <ul class="tsd-parameter-list">
152
166
  <li>
153
- <h5><span class="tsd-kind-parameter">v</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
167
+ <h5><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h5></li></ul></div>
154
168
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
155
169
  <ul>
156
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L80">src/data-structures/linked-list/doubly-linked-list.ts:80</a></li></ul></aside></li></ul></section></section>
170
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L79">src/data-structures/linked-list/doubly-linked-list.ts:79</a></li></ul></aside></li></ul></section></section>
157
171
  <section class="tsd-panel-group tsd-member-group">
158
172
  <h2>Methods</h2>
159
- <section class="tsd-panel tsd-member"><a id="addFirst" class="tsd-anchor"></a>
160
- <h3 class="tsd-anchor-link"><span>add<wbr/>First</span><a href="#addFirst" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
173
+ <section class="tsd-panel tsd-member"><a id="clear" class="tsd-anchor"></a>
174
+ <h3 class="tsd-anchor-link"><span>clear</span><a href="#clear" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
175
+ <ul class="tsd-signatures">
176
+ <li class="tsd-signature tsd-anchor-link" id="clear.clear-1"><span class="tsd-kind-call-signature">clear</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#clear.clear-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
177
+ <li class="tsd-description">
178
+ <div class="tsd-comment tsd-typography"><p>The <code>clear</code> function resets the linked list by setting the head, tail, and length to null and 0 respectively.</p>
179
+ </div>
180
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
181
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
182
+ <ul>
183
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L334">src/data-structures/linked-list/doubly-linked-list.ts:334</a></li></ul></aside></li></ul></section>
184
+ <section class="tsd-panel tsd-member"><a id="delete" class="tsd-anchor"></a>
185
+ <h3 class="tsd-anchor-link"><span>delete</span><a href="#delete" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
161
186
  <ul class="tsd-signatures">
162
- <li class="tsd-signature tsd-anchor-link" id="addFirst.addFirst-1"><span class="tsd-kind-call-signature">add<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#addFirst.addFirst-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
187
+ <li class="tsd-signature tsd-anchor-link" id="delete.delete-1"><span class="tsd-kind-call-signature">delete</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#delete.delete-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
163
188
  <li class="tsd-description">
164
- <div class="tsd-comment tsd-typography"><p>The function adds a new node with a given value to the beginning of a doubly linked list.</p>
189
+ <div class="tsd-comment tsd-typography"><p>The <code>delete</code> function removes a node with a specific value from a doubly linked list.</p>
165
190
  </div>
166
191
  <div class="tsd-parameters">
167
192
  <h4 class="tsd-parameters-title">Parameters</h4>
168
193
  <ul class="tsd-parameter-list">
169
194
  <li>
170
195
  <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
171
- <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value of the element that you want to add to the beginning of
172
- the doubly linked list.</p>
196
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value that you want to delete from the linked list.</p>
173
197
  </div>
174
198
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
175
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>A boolean value is being returned.</p>
199
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The <code>delete</code> method returns a boolean value. It returns <code>true</code> if the value <code>val</code> is found and deleted from
200
+ the linked list, and <code>false</code> if the value is not found in the linked list.</p>
176
201
 
177
202
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
178
203
  <ul>
179
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L111">src/data-structures/linked-list/doubly-linked-list.ts:111</a></li></ul></aside></li></ul></section>
180
- <section class="tsd-panel tsd-member"><a id="addLast" class="tsd-anchor"></a>
181
- <h3 class="tsd-anchor-link"><span>add<wbr/>Last</span><a href="#addLast" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
204
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L295">src/data-structures/linked-list/doubly-linked-list.ts:295</a></li></ul></aside></li></ul></section>
205
+ <section class="tsd-panel tsd-member"><a id="deleteAt" class="tsd-anchor"></a>
206
+ <h3 class="tsd-anchor-link"><span>delete<wbr/>At</span><a href="#deleteAt" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
182
207
  <ul class="tsd-signatures">
183
- <li class="tsd-signature tsd-anchor-link" id="addLast.addLast-1"><span class="tsd-kind-call-signature">add<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#addLast.addLast-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
208
+ <li class="tsd-signature tsd-anchor-link" id="deleteAt.deleteAt-1"><span class="tsd-kind-call-signature">delete<wbr/>At</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#deleteAt.deleteAt-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
184
209
  <li class="tsd-description">
185
- <div class="tsd-comment tsd-typography"><p>The function adds a new node with a given value to the end of a doubly linked list.</p>
210
+ <div class="tsd-comment tsd-typography"><p>The <code>deleteAt</code> function removes an element at a specified index from a linked list and returns the removed element.</p>
186
211
  </div>
187
212
  <div class="tsd-parameters">
188
213
  <h4 class="tsd-parameters-title">Parameters</h4>
189
214
  <ul class="tsd-parameter-list">
190
215
  <li>
191
- <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
192
- <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value of the element that you want to add to the end of the
193
- doubly linked list.</p>
216
+ <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
217
+ <div class="tsd-comment tsd-typography"><p>The index parameter represents the position of the element that needs to be deleted in the
218
+ data structure. It is of type number.</p>
194
219
  </div>
195
220
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
196
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>a boolean value, which is always true.</p>
221
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>deleteAt</code> returns the value of the node that was deleted, or <code>null</code> if the index is out of
222
+ bounds.</p>
197
223
 
198
224
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
199
225
  <ul>
200
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L131">src/data-structures/linked-list/doubly-linked-list.ts:131</a></li></ul></aside></li></ul></section>
201
- <section class="tsd-panel tsd-member"><a id="get" class="tsd-anchor"></a>
202
- <h3 class="tsd-anchor-link"><span>get</span><a href="#get" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
226
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L275">src/data-structures/linked-list/doubly-linked-list.ts:275</a></li></ul></aside></li></ul></section>
227
+ <section class="tsd-panel tsd-member"><a id="filter" class="tsd-anchor"></a>
228
+ <h3 class="tsd-anchor-link"><span>filter</span><a href="#filter" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
203
229
  <ul class="tsd-signatures">
204
- <li class="tsd-signature tsd-anchor-link" id="get.get-1"><span class="tsd-kind-call-signature">get</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#get.get-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
230
+ <li class="tsd-signature tsd-anchor-link" id="filter.filter-1"><span class="tsd-kind-call-signature">filter</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#filter.filter-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
205
231
  <li class="tsd-description">
206
- <div class="tsd-comment tsd-typography"><p>Returns the node at the specified index of the linked list.
207
- If index = 0; first element in the list is returned.
208
- If index = 3; fourth element in the list is returned.</p>
232
+ <div class="tsd-comment tsd-typography"><p>The <code>filter</code> function iterates through a DoublyLinkedList and returns a new DoublyLinkedList containing only the
233
+ elements that satisfy the given callback function.</p>
209
234
  </div>
210
235
  <div class="tsd-parameters">
211
236
  <h4 class="tsd-parameters-title">Parameters</h4>
212
237
  <ul class="tsd-parameter-list">
213
238
  <li>
214
- <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
215
- <div class="tsd-comment tsd-typography"><p>Index of the node to be retrieved</p>
239
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span></h5>
240
+ <div class="tsd-comment tsd-typography"><p>The <code>callback</code> parameter is a function that takes a value of type <code>T</code> and returns a boolean value.
241
+ It is used to determine whether a value should be included in the filtered list or not.</p>
216
242
  </div>
217
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
218
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4>
243
+ <div class="tsd-comment tsd-typography"></div>
244
+ <ul class="tsd-parameters">
245
+ <li class="tsd-parameter-signature">
246
+ <ul class="tsd-signatures">
247
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
248
+ <li class="tsd-description">
249
+ <div class="tsd-parameters">
250
+ <h4 class="tsd-parameters-title">Parameters</h4>
251
+ <ul class="tsd-parameter-list">
252
+ <li>
253
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
254
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></li></ul></li></ul></div>
255
+ <h4 class="tsd-returns-title">Returns <a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The filtered list, which is an instance of the DoublyLinkedList class.</p>
256
+
219
257
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
220
258
  <ul>
221
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L258">src/data-structures/linked-list/doubly-linked-list.ts:258</a></li></ul></aside></li>
222
- <li class="tsd-signature tsd-anchor-link" id="get.get-2"><span class="tsd-kind-call-signature">get</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span>, <span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#get.get-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
259
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L465">src/data-structures/linked-list/doubly-linked-list.ts:465</a></li></ul></aside></li></ul></section>
260
+ <section class="tsd-panel tsd-member"><a id="find" class="tsd-anchor"></a>
261
+ <h3 class="tsd-anchor-link"><span>find</span><a href="#find" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
262
+ <ul class="tsd-signatures">
263
+ <li class="tsd-signature tsd-anchor-link" id="find.find-1"><span class="tsd-kind-call-signature">find</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#find.find-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
223
264
  <li class="tsd-description">
224
- <div class="tsd-comment tsd-typography"><p>Returns the node at the specified index of the linked list.
225
- If index = 0; first element in the list is returned.
226
- If index = 3; fourth element in the list is returned.</p>
265
+ <div class="tsd-comment tsd-typography"><p>The <code>find</code> function iterates through a linked list and returns the first element that satisfies a given condition.</p>
227
266
  </div>
228
267
  <div class="tsd-parameters">
229
268
  <h4 class="tsd-parameters-title">Parameters</h4>
230
269
  <ul class="tsd-parameter-list">
231
270
  <li>
232
- <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
233
- <div class="tsd-comment tsd-typography"><p>Index of the node to be retrieved</p>
271
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span></h5>
272
+ <div class="tsd-comment tsd-typography"><p>A function that takes a value of type T as its parameter and returns a boolean value. This
273
+ function is used to determine whether a particular value in the linked list satisfies a certain condition.</p>
234
274
  </div>
235
- <div class="tsd-comment tsd-typography"></div></li>
275
+ <div class="tsd-comment tsd-typography"></div>
276
+ <ul class="tsd-parameters">
277
+ <li class="tsd-parameter-signature">
278
+ <ul class="tsd-signatures">
279
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
280
+ <li class="tsd-description">
281
+ <div class="tsd-parameters">
282
+ <h4 class="tsd-parameters-title">Parameters</h4>
283
+ <ul class="tsd-parameter-list">
236
284
  <li>
237
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
238
- <div class="tsd-comment tsd-typography"><p>Return value type</p>
239
- </div>
240
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
241
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4>
285
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
286
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></li></ul></li></ul></div>
287
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>find</code> returns the first element in the linked list that satisfies the condition specified by
288
+ the callback function. If no element satisfies the condition, it returns <code>null</code>.</p>
289
+
242
290
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
243
291
  <ul>
244
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L259">src/data-structures/linked-list/doubly-linked-list.ts:259</a></li></ul></aside></li>
245
- <li class="tsd-signature tsd-anchor-link" id="get.get-3"><span class="tsd-kind-call-signature">get</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span>, <span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#get.get-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
292
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L347">src/data-structures/linked-list/doubly-linked-list.ts:347</a></li></ul></aside></li></ul></section>
293
+ <section class="tsd-panel tsd-member"><a id="findLast" class="tsd-anchor"></a>
294
+ <h3 class="tsd-anchor-link"><span>find<wbr/>Last</span><a href="#findLast" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
295
+ <ul class="tsd-signatures">
296
+ <li class="tsd-signature tsd-anchor-link" id="findLast.findLast-1"><span class="tsd-kind-call-signature">find<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#findLast.findLast-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
246
297
  <li class="tsd-description">
247
- <div class="tsd-comment tsd-typography"><p>Returns the node at the specified index of the linked list.
248
- If index = 0; first element in the list is returned.
249
- If index = 3; fourth element in the list is returned.</p>
298
+ <div class="tsd-comment tsd-typography"><p>The <code>findLast</code> function iterates through a linked list from the last node to the first node and returns the last
299
+ value that satisfies the given callback function, or null if no value satisfies the callback.</p>
250
300
  </div>
251
301
  <div class="tsd-parameters">
252
302
  <h4 class="tsd-parameters-title">Parameters</h4>
253
303
  <ul class="tsd-parameter-list">
254
304
  <li>
255
- <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
256
- <div class="tsd-comment tsd-typography"><p>Index of the node to be retrieved</p>
305
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span></h5>
306
+ <div class="tsd-comment tsd-typography"><p>A function that takes a value of type T as its parameter and returns a boolean value. This
307
+ function is used to determine whether a given value satisfies a certain condition.</p>
257
308
  </div>
258
- <div class="tsd-comment tsd-typography"></div></li>
309
+ <div class="tsd-comment tsd-typography"></div>
310
+ <ul class="tsd-parameters">
311
+ <li class="tsd-parameter-signature">
312
+ <ul class="tsd-signatures">
313
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
314
+ <li class="tsd-description">
315
+ <div class="tsd-parameters">
316
+ <h4 class="tsd-parameters-title">Parameters</h4>
317
+ <ul class="tsd-parameter-list">
259
318
  <li>
260
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
261
- <div class="tsd-comment tsd-typography"><p>Return value type</p>
262
- </div>
263
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
264
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4>
319
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
320
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></li></ul></li></ul></div>
321
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>findLast</code> returns the last value in the linked list that satisfies the condition specified by
322
+ the callback function. If no value satisfies the condition, it returns <code>null</code>.</p>
323
+
265
324
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
266
325
  <ul>
267
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L260">src/data-structures/linked-list/doubly-linked-list.ts:260</a></li></ul></aside></li></ul></section>
268
- <section class="tsd-panel tsd-member"><a id="getFirst" class="tsd-anchor"></a>
269
- <h3 class="tsd-anchor-link"><span>get<wbr/>First</span><a href="#getFirst" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
326
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L386">src/data-structures/linked-list/doubly-linked-list.ts:386</a></li></ul></aside></li></ul></section>
327
+ <section class="tsd-panel tsd-member"><a id="findNode" class="tsd-anchor"></a>
328
+ <h3 class="tsd-anchor-link"><span>find<wbr/>Node</span><a href="#findNode" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
270
329
  <ul class="tsd-signatures">
271
- <li class="tsd-signature tsd-anchor-link" id="getFirst.getFirst-1"><span class="tsd-kind-call-signature">get<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#getFirst.getFirst-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
330
+ <li class="tsd-signature tsd-anchor-link" id="findNode.findNode-1"><span class="tsd-kind-call-signature">find<wbr/>Node</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#findNode.findNode-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
272
331
  <li class="tsd-description">
273
- <div class="tsd-comment tsd-typography"><p>Starting from TypeScript version 5.0 and onwards, the use of distinct access modifiers for Getters and Setters is not permitted. As an alternative, to ensure compatibility, it is necessary to adopt a Java-style approach for Setters (using the same name as the property) while utilizing separate method names for Getters.</p>
332
+ <div class="tsd-comment tsd-typography"><p>The function <code>findNodeByValue</code> searches for a node with a specific value in a doubly linked list and returns the
333
+ node if found, otherwise it returns null.</p>
274
334
  </div>
275
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4>
335
+ <div class="tsd-parameters">
336
+ <h4 class="tsd-parameters-title">Parameters</h4>
337
+ <ul class="tsd-parameter-list">
338
+ <li>
339
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
340
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter is the value that we want to search for in the doubly linked list.</p>
341
+ </div>
342
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
343
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The function <code>findNodeByValue</code> returns a <code>DoublyLinkedListNode&lt;T&gt;</code> if a node with the specified value <code>val</code>
344
+ is found in the linked list. If no such node is found, it returns <code>null</code>.</p>
345
+
276
346
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
277
347
  <ul>
278
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L87">src/data-structures/linked-list/doubly-linked-list.ts:87</a></li></ul></aside></li></ul></section>
279
- <section class="tsd-panel tsd-member"><a id="getLast" class="tsd-anchor"></a>
280
- <h3 class="tsd-anchor-link"><span>get<wbr/>Last</span><a href="#getLast" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
348
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L224">src/data-structures/linked-list/doubly-linked-list.ts:224</a></li></ul></aside></li></ul></section>
349
+ <section class="tsd-panel tsd-member"><a id="forEach" class="tsd-anchor"></a>
350
+ <h3 class="tsd-anchor-link"><span>for<wbr/>Each</span><a href="#forEach" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
281
351
  <ul class="tsd-signatures">
282
- <li class="tsd-signature tsd-anchor-link" id="getLast.getLast-1"><span class="tsd-kind-call-signature">get<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#getLast.getLast-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
352
+ <li class="tsd-signature tsd-anchor-link" id="forEach.forEach-1"><span class="tsd-kind-call-signature">for<wbr/>Each</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#forEach.forEach-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
283
353
  <li class="tsd-description">
284
- <div class="tsd-comment tsd-typography"><p>Starting from TypeScript version 5.0 and onwards, the use of distinct access modifiers for Getters and Setters is not permitted. As an alternative, to ensure compatibility, it is necessary to adopt a Java-style approach for Setters (using the same name as the property) while utilizing separate method names for Getters.</p>
354
+ <div class="tsd-comment tsd-typography"><p>The <code>forEach</code> function iterates over each element in a linked list and applies a callback function to each element.</p>
285
355
  </div>
286
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4>
287
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
288
- <ul>
289
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L94">src/data-structures/linked-list/doubly-linked-list.ts:94</a></li></ul></aside></li></ul></section>
290
- <section class="tsd-panel tsd-member"><a id="getSize" class="tsd-anchor"></a>
291
- <h3 class="tsd-anchor-link"><span>get<wbr/>Size</span><a href="#getSize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
356
+ <div class="tsd-parameters">
357
+ <h4 class="tsd-parameters-title">Parameters</h4>
358
+ <ul class="tsd-parameter-list">
359
+ <li>
360
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span>, <span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
361
+ <div class="tsd-comment tsd-typography"><p>The callback parameter is a function that takes two arguments: val and index. The val argument
362
+ represents the value of the current node in the linked list, and the index argument represents the index of the
363
+ current node in the linked list.</p>
364
+ </div>
365
+ <div class="tsd-comment tsd-typography"></div>
366
+ <ul class="tsd-parameters">
367
+ <li class="tsd-parameter-signature">
292
368
  <ul class="tsd-signatures">
293
- <li class="tsd-signature tsd-anchor-link" id="getSize.getSize-1"><span class="tsd-kind-call-signature">get<wbr/>Size</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#getSize.getSize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
369
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span>, <span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
294
370
  <li class="tsd-description">
295
- <div class="tsd-comment tsd-typography"><p>Starting from TypeScript version 5.0 and onwards, the use of distinct access modifiers for Getters and Setters is not permitted. As an alternative, to ensure compatibility, it is necessary to adopt a Java-style approach for Setters (using the same name as the property) while utilizing separate method names for Getters.</p>
296
- </div>
297
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
371
+ <div class="tsd-parameters">
372
+ <h4 class="tsd-parameters-title">Parameters</h4>
373
+ <ul class="tsd-parameter-list">
374
+ <li>
375
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li>
376
+ <li>
377
+ <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
378
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
379
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
298
380
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
299
381
  <ul>
300
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L101">src/data-structures/linked-list/doubly-linked-list.ts:101</a></li></ul></aside></li></ul></section>
301
- <section class="tsd-panel tsd-member"><a id="insert" class="tsd-anchor"></a>
302
- <h3 class="tsd-anchor-link"><span>insert</span><a href="#insert" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
382
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L430">src/data-structures/linked-list/doubly-linked-list.ts:430</a></li></ul></aside></li></ul></section>
383
+ <section class="tsd-panel tsd-member"><a id="getAt" class="tsd-anchor"></a>
384
+ <h3 class="tsd-anchor-link"><span>get<wbr/>At</span><a href="#getAt" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
303
385
  <ul class="tsd-signatures">
304
- <li class="tsd-signature tsd-anchor-link" id="insert.insert-1"><span class="tsd-kind-call-signature">insert</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#insert.insert-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
386
+ <li class="tsd-signature tsd-anchor-link" id="getAt.getAt-1"><span class="tsd-kind-call-signature">get<wbr/>At</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#getAt.getAt-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
305
387
  <li class="tsd-description">
306
- <div class="tsd-comment tsd-typography"><p>Inserts a new node at the specified index.</p>
388
+ <div class="tsd-comment tsd-typography"><p>The <code>getAt</code> function returns the value at a specified index in a linked list, or null if the index is out of bounds.</p>
307
389
  </div>
308
390
  <div class="tsd-parameters">
309
391
  <h4 class="tsd-parameters-title">Parameters</h4>
310
392
  <ul class="tsd-parameter-list">
311
393
  <li>
312
394
  <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
313
- <div class="tsd-comment tsd-typography"><p>Index at which the new node has to be inserted</p>
314
- </div>
315
- <div class="tsd-comment tsd-typography"></div></li>
316
- <li>
317
- <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
318
- <div class="tsd-comment tsd-typography"><p>Value of the new node to be inserted</p>
395
+ <div class="tsd-comment tsd-typography"><p>The index parameter is a number that represents the position of the element we want to
396
+ retrieve from the list.</p>
319
397
  </div>
320
398
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
321
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4>
399
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method is returning the value at the specified index in the linked list. If the index is out of bounds
400
+ or the linked list is empty, it will return null.</p>
401
+
322
402
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
323
403
  <ul>
324
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L322">src/data-structures/linked-list/doubly-linked-list.ts:322</a></li></ul></aside></li></ul></section>
325
- <section class="tsd-panel tsd-member"><a id="isEmpty" class="tsd-anchor"></a>
326
- <h3 class="tsd-anchor-link"><span>is<wbr/>Empty</span><a href="#isEmpty" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
404
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L191">src/data-structures/linked-list/doubly-linked-list.ts:191</a></li></ul></aside></li></ul></section>
405
+ <section class="tsd-panel tsd-member"><a id="getLength" class="tsd-anchor"></a>
406
+ <h3 class="tsd-anchor-link"><span>get<wbr/>Length</span><a href="#getLength" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
327
407
  <ul class="tsd-signatures">
328
- <li class="tsd-signature tsd-anchor-link" id="isEmpty.isEmpty-1"><span class="tsd-kind-call-signature">is<wbr/>Empty</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#isEmpty.isEmpty-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
408
+ <li class="tsd-signature tsd-anchor-link" id="getLength.getLength-1"><span class="tsd-kind-call-signature">get<wbr/>Length</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#getLength.getLength-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
329
409
  <li class="tsd-description">
330
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
410
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><aside class="tsd-sources">
331
411
  <ul>
332
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L312">src/data-structures/linked-list/doubly-linked-list.ts:312</a></li></ul></aside></li></ul></section>
333
- <section class="tsd-panel tsd-member"><a id="peekFirst" class="tsd-anchor"></a>
334
- <h3 class="tsd-anchor-link"><span>peek<wbr/>First</span><a href="#peekFirst" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
412
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L107">src/data-structures/linked-list/doubly-linked-list.ts:107</a></li></ul></aside></li></ul></section>
413
+ <section class="tsd-panel tsd-member"><a id="getNodeAt" class="tsd-anchor"></a>
414
+ <h3 class="tsd-anchor-link"><span>get<wbr/>Node<wbr/>At</span><a href="#getNodeAt" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
335
415
  <ul class="tsd-signatures">
336
- <li class="tsd-signature tsd-anchor-link" id="peekFirst.peekFirst-1"><span class="tsd-kind-call-signature">peek<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#peekFirst.peekFirst-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
416
+ <li class="tsd-signature tsd-anchor-link" id="getNodeAt.getNodeAt-1"><span class="tsd-kind-call-signature">get<wbr/>Node<wbr/>At</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#getNodeAt.getNodeAt-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
337
417
  <li class="tsd-description">
338
- <div class="tsd-comment tsd-typography"><p>The <code>peekFirst</code> function returns the first node or value in a doubly linked list, depending on the specified
339
- parameter.</p>
418
+ <div class="tsd-comment tsd-typography"><p>The function <code>getNodeAt</code> returns the node at a given index in a doubly linked list, or null if the index is out of
419
+ range.</p>
340
420
  </div>
341
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>peekFirst</code> returns either the first node of the doubly linked list (<code>DoublyLinkedListNode&lt;T&gt;</code>),
342
- the value of the first node (<code>T</code>), or <code>null</code> depending on the value of the <code>by</code> parameter.</p>
421
+ <div class="tsd-parameters">
422
+ <h4 class="tsd-parameters-title">Parameters</h4>
423
+ <ul class="tsd-parameter-list">
424
+ <li>
425
+ <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
426
+ <div class="tsd-comment tsd-typography"><p>The <code>index</code> parameter is a number that represents the position of the node we want to
427
+ retrieve from the doubly linked list. It indicates the zero-based index of the node we want to access.</p>
428
+ </div>
429
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
430
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method <code>getNodeAt(index: number)</code> returns a <code>DoublyLinkedListNode&lt;T&gt;</code> object if the index is within the
431
+ valid range of the linked list, otherwise it returns <code>null</code>.</p>
343
432
 
344
433
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
345
434
  <ul>
346
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L145">src/data-structures/linked-list/doubly-linked-list.ts:145</a></li></ul></aside></li>
347
- <li class="tsd-signature tsd-anchor-link" id="peekFirst.peekFirst-2"><span class="tsd-kind-call-signature">peek<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#peekFirst.peekFirst-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
435
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L208">src/data-structures/linked-list/doubly-linked-list.ts:208</a></li></ul></aside></li></ul></section>
436
+ <section class="tsd-panel tsd-member"><a id="indexOf" class="tsd-anchor"></a>
437
+ <h3 class="tsd-anchor-link"><span>index<wbr/>Of</span><a href="#indexOf" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
438
+ <ul class="tsd-signatures">
439
+ <li class="tsd-signature tsd-anchor-link" id="indexOf.indexOf-1"><span class="tsd-kind-call-signature">index<wbr/>Of</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#indexOf.indexOf-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
348
440
  <li class="tsd-description">
349
- <div class="tsd-comment tsd-typography"><p>The <code>peekFirst</code> function returns the first node or value in a doubly linked list, depending on the specified
350
- parameter.</p>
441
+ <div class="tsd-comment tsd-typography"><p>The function returns the index of the first occurrence of a given value in a linked list.</p>
351
442
  </div>
352
443
  <div class="tsd-parameters">
353
444
  <h4 class="tsd-parameters-title">Parameters</h4>
354
445
  <ul class="tsd-parameter-list">
355
446
  <li>
356
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
357
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy. It
358
- is used to specify whether to return the first node, the value of the first node, or the first node itself.</p>
447
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
448
+ <div class="tsd-comment tsd-typography"><p>The parameter <code>val</code> is of type <code>T</code>, which means it can be any data type. It represents the value
449
+ that we are searching for in the linked list.</p>
359
450
  </div>
360
451
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
361
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>peekFirst</code> returns either the first node of the doubly linked list (<code>DoublyLinkedListNode&lt;T&gt;</code>),
362
- the value of the first node (<code>T</code>), or <code>null</code> depending on the value of the <code>by</code> parameter.</p>
452
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4><p>The method <code>indexOf</code> returns the index of the first occurrence of the specified value <code>val</code> in the linked
453
+ list. If the value is not found, it returns -1.</p>
363
454
 
364
455
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
365
456
  <ul>
366
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L146">src/data-structures/linked-list/doubly-linked-list.ts:146</a></li></ul></aside></li>
367
- <li class="tsd-signature tsd-anchor-link" id="peekFirst.peekFirst-3"><span class="tsd-kind-call-signature">peek<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#peekFirst.peekFirst-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
457
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L365">src/data-structures/linked-list/doubly-linked-list.ts:365</a></li></ul></aside></li></ul></section>
458
+ <section class="tsd-panel tsd-member"><a id="insert" class="tsd-anchor"></a>
459
+ <h3 class="tsd-anchor-link"><span>insert</span><a href="#insert" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
460
+ <ul class="tsd-signatures">
461
+ <li class="tsd-signature tsd-anchor-link" id="insert.insert-1"><span class="tsd-kind-call-signature">insert</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#insert.insert-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
368
462
  <li class="tsd-description">
369
- <div class="tsd-comment tsd-typography"><p>The <code>peekFirst</code> function returns the first node or value in a doubly linked list, depending on the specified
370
- parameter.</p>
463
+ <div class="tsd-comment tsd-typography"><p>The <code>insert</code> function inserts a value at a specified index in a doubly linked list.</p>
371
464
  </div>
372
465
  <div class="tsd-parameters">
373
466
  <h4 class="tsd-parameters-title">Parameters</h4>
374
467
  <ul class="tsd-parameter-list">
375
468
  <li>
376
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
377
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy. It
378
- is used to specify whether to return the first node, the value of the first node, or the first node itself.</p>
469
+ <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
470
+ <div class="tsd-comment tsd-typography"><p>The index parameter represents the position at which the new value should be inserted in the
471
+ DoublyLinkedList. It is of type number.</p>
472
+ </div>
473
+ <div class="tsd-comment tsd-typography"></div></li>
474
+ <li>
475
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
476
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value that you want to insert into the Doubly Linked List at the
477
+ specified index.</p>
379
478
  </div>
380
479
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
381
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method <code>peekFirst</code> returns either the first node of the doubly linked list (<code>DoublyLinkedListNode&lt;T&gt;</code>),
382
- the value of the first node (<code>T</code>), or <code>null</code> depending on the value of the <code>by</code> parameter.</p>
480
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The <code>insert</code> method returns a boolean value. It returns <code>true</code> if the insertion is successful, and <code>false</code>
481
+ if the index is out of bounds.</p>
383
482
 
384
483
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
385
484
  <ul>
386
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L147">src/data-structures/linked-list/doubly-linked-list.ts:147</a></li></ul></aside></li></ul></section>
387
- <section class="tsd-panel tsd-member"><a id="peekLast" class="tsd-anchor"></a>
388
- <h3 class="tsd-anchor-link"><span>peek<wbr/>Last</span><a href="#peekLast" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
485
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L246">src/data-structures/linked-list/doubly-linked-list.ts:246</a></li></ul></aside></li></ul></section>
486
+ <section class="tsd-panel tsd-member"><a id="insertAfter" class="tsd-anchor"></a>
487
+ <h3 class="tsd-anchor-link"><span>insert<wbr/>After</span><a href="#insertAfter" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
389
488
  <ul class="tsd-signatures">
390
- <li class="tsd-signature tsd-anchor-link" id="peekLast.peekLast-1"><span class="tsd-kind-call-signature">peek<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#peekLast.peekLast-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
489
+ <li class="tsd-signature tsd-anchor-link" id="insertAfter.insertAfter-1"><span class="tsd-kind-call-signature">insert<wbr/>After</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">existingValue</span>, <span class="tsd-kind-parameter">newValue</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#insertAfter.insertAfter-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
391
490
  <li class="tsd-description">
392
- <div class="tsd-comment tsd-typography"><p>The <code>peekLast</code> function returns the last node or value in a doubly linked list.</p>
491
+ <div class="tsd-comment tsd-typography"><p>The function inserts a new value after an existing value in a doubly linked list.</p>
492
+ </div>
493
+ <div class="tsd-parameters">
494
+ <h4 class="tsd-parameters-title">Parameters</h4>
495
+ <ul class="tsd-parameter-list">
496
+ <li>
497
+ <h5><span class="tsd-kind-parameter">existingValue</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
498
+ <div class="tsd-comment tsd-typography"><p>The existing value is the value of the node after which we want to insert the new value.</p>
499
+ </div>
500
+ <div class="tsd-comment tsd-typography"></div></li>
501
+ <li>
502
+ <h5><span class="tsd-kind-parameter">newValue</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
503
+ <div class="tsd-comment tsd-typography"><p>The <code>newValue</code> parameter represents the value of the new node that you want to insert after
504
+ the existing node.</p>
393
505
  </div>
394
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>peekLast</code> returns the last node, value, or null based on the specified <code>by</code> parameter.</p>
506
+ <div class="tsd-comment tsd-typography"></div></li></ul></div>
507
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method is returning a boolean value. It returns true if the insertion is successful and false if the
508
+ existing value is not found in the linked list.</p>
395
509
 
396
510
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
397
511
  <ul>
398
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L167">src/data-structures/linked-list/doubly-linked-list.ts:167</a></li></ul></aside></li>
399
- <li class="tsd-signature tsd-anchor-link" id="peekLast.peekLast-2"><span class="tsd-kind-call-signature">peek<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#peekLast.peekLast-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
512
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L505">src/data-structures/linked-list/doubly-linked-list.ts:505</a></li></ul></aside></li></ul></section>
513
+ <section class="tsd-panel tsd-member"><a id="insertBefore" class="tsd-anchor"></a>
514
+ <h3 class="tsd-anchor-link"><span>insert<wbr/>Before</span><a href="#insertBefore" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
515
+ <ul class="tsd-signatures">
516
+ <li class="tsd-signature tsd-anchor-link" id="insertBefore.insertBefore-1"><span class="tsd-kind-call-signature">insert<wbr/>Before</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">existingValue</span>, <span class="tsd-kind-parameter">newValue</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#insertBefore.insertBefore-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
400
517
  <li class="tsd-description">
401
- <div class="tsd-comment tsd-typography"><p>The <code>peekLast</code> function returns the last node or value in a doubly linked list.</p>
518
+ <div class="tsd-comment tsd-typography"><p>The <code>insertBefore</code> function inserts a new value before an existing value in a doubly linked list.</p>
402
519
  </div>
403
520
  <div class="tsd-parameters">
404
521
  <h4 class="tsd-parameters-title">Parameters</h4>
405
522
  <ul class="tsd-parameter-list">
406
523
  <li>
407
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
408
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy.
409
- It specifies whether to return the last node, the value of the last node, or both. The default value is &#39;val&#39;, which
410
- means that if no value is provided for the &quot;by&quot; parameter, the method</p>
524
+ <h5><span class="tsd-kind-parameter">existingValue</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
525
+ <div class="tsd-comment tsd-typography"><p>The existing value is the value of the node that you want to insert the new value before.</p>
526
+ </div>
527
+ <div class="tsd-comment tsd-typography"></div></li>
528
+ <li>
529
+ <h5><span class="tsd-kind-parameter">newValue</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
530
+ <div class="tsd-comment tsd-typography"><p>The <code>newValue</code> parameter represents the value of the new node that you want to insert before
531
+ the existing node.</p>
411
532
  </div>
412
533
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
413
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>peekLast</code> returns the last node, value, or null based on the specified <code>by</code> parameter.</p>
534
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><p>The method is returning a boolean value. It returns true if the insertion is successful and false if the
535
+ existing value is not found in the linked list.</p>
414
536
 
415
537
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
416
538
  <ul>
417
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L168">src/data-structures/linked-list/doubly-linked-list.ts:168</a></li></ul></aside></li>
418
- <li class="tsd-signature tsd-anchor-link" id="peekLast.peekLast-3"><span class="tsd-kind-call-signature">peek<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#peekLast.peekLast-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
539
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L534">src/data-structures/linked-list/doubly-linked-list.ts:534</a></li></ul></aside></li></ul></section>
540
+ <section class="tsd-panel tsd-member"><a id="map" class="tsd-anchor"></a>
541
+ <h3 class="tsd-anchor-link"><span>map</span><a href="#map" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
542
+ <ul class="tsd-signatures">
543
+ <li class="tsd-signature tsd-anchor-link" id="map.map-1"><span class="tsd-kind-call-signature">map</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">&gt;</span><a href="#map.map-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
419
544
  <li class="tsd-description">
420
- <div class="tsd-comment tsd-typography"><p>The <code>peekLast</code> function returns the last node or value in a doubly linked list.</p>
545
+ <div class="tsd-comment tsd-typography"><p>The <code>map</code> function takes a callback function and applies it to each element in the DoublyLinkedList, returning a new
546
+ DoublyLinkedList with the transformed values.</p>
421
547
  </div>
548
+ <section class="tsd-panel">
549
+ <h4>Type Parameters</h4>
550
+ <ul class="tsd-type-parameter-list">
551
+ <li>
552
+ <h4><span class="tsd-kind-type-parameter">U</span></h4></li></ul></section>
422
553
  <div class="tsd-parameters">
423
554
  <h4 class="tsd-parameters-title">Parameters</h4>
424
555
  <ul class="tsd-parameter-list">
425
556
  <li>
426
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
427
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy.
428
- It specifies whether to return the last node, the value of the last node, or both. The default value is &#39;val&#39;, which
429
- means that if no value is provided for the &quot;by&quot; parameter, the method</p>
430
- </div>
431
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
432
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method <code>peekLast</code> returns the last node, value, or null based on the specified <code>by</code> parameter.</p>
557
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">)</span></h5>
558
+ <div class="tsd-comment tsd-typography"><p>The callback parameter is a function that takes a value of type T (the type of values stored in
559
+ the original DoublyLinkedList) and returns a value of type U (the type of values that will be stored in the mapped
560
+ DoublyLinkedList).</p>
561
+ </div>
562
+ <div class="tsd-comment tsd-typography"></div>
563
+ <ul class="tsd-parameters">
564
+ <li class="tsd-parameter-signature">
565
+ <ul class="tsd-signatures">
566
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">U</span></li>
567
+ <li class="tsd-description">
568
+ <div class="tsd-parameters">
569
+ <h4 class="tsd-parameters-title">Parameters</h4>
570
+ <ul class="tsd-parameter-list">
571
+ <li>
572
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
573
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">U</span></h4></li></ul></li></ul></li></ul></div>
574
+ <h4 class="tsd-returns-title">Returns <a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The <code>map</code> function is returning a new instance of <code>DoublyLinkedList&lt;U&gt;</code> that contains the mapped values.</p>
433
575
 
434
576
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
435
577
  <ul>
436
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L169">src/data-structures/linked-list/doubly-linked-list.ts:169</a></li></ul></aside></li></ul></section>
437
- <section class="tsd-panel tsd-member"><a id="pollFirst" class="tsd-anchor"></a>
438
- <h3 class="tsd-anchor-link"><span>poll<wbr/>First</span><a href="#pollFirst" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
578
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L448">src/data-structures/linked-list/doubly-linked-list.ts:448</a></li></ul></aside></li></ul></section>
579
+ <section class="tsd-panel tsd-member"><a id="pop" class="tsd-anchor"></a>
580
+ <h3 class="tsd-anchor-link"><span>pop</span><a href="#pop" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
439
581
  <ul class="tsd-signatures">
440
- <li class="tsd-signature tsd-anchor-link" id="pollFirst.pollFirst-1"><span class="tsd-kind-call-signature">poll<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#pollFirst.pollFirst-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
582
+ <li class="tsd-signature tsd-anchor-link" id="pop.pop-1"><span class="tsd-kind-call-signature">pop</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#pop.pop-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
441
583
  <li class="tsd-description">
442
- <div class="tsd-comment tsd-typography"><p>The function <code>pollFirst</code> removes and returns the first element of a doubly linked list, either as a node or its
443
- value, depending on the specified parameter.</p>
584
+ <div class="tsd-comment tsd-typography"><p>The <code>pop()</code> function removes and returns the value of the last node in a doubly linked list.</p>
444
585
  </div>
445
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>pollFirst</code> returns either the value of the first node in the doubly linked list, the first node
446
- itself, or null if the list is empty. The specific return type depends on the value of the <code>by</code> parameter. If <code>by</code>
447
- is set to &#39;node&#39;, the method returns the first node. If <code>by</code> is set to &#39;val&#39;, the method returns the value</p>
586
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method is returning the value of the removed node (removedNode.val) if the list is not empty. If the
587
+ list is empty, it returns null.</p>
448
588
 
449
589
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
450
590
  <ul>
451
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L188">src/data-structures/linked-list/doubly-linked-list.ts:188</a></li></ul></aside></li>
452
- <li class="tsd-signature tsd-anchor-link" id="pollFirst.pollFirst-2"><span class="tsd-kind-call-signature">poll<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#pollFirst.pollFirst-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
591
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L133">src/data-structures/linked-list/doubly-linked-list.ts:133</a></li></ul></aside></li></ul></section>
592
+ <section class="tsd-panel tsd-member"><a id="push" class="tsd-anchor"></a>
593
+ <h3 class="tsd-anchor-link"><span>push</span><a href="#push" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
594
+ <ul class="tsd-signatures">
595
+ <li class="tsd-signature tsd-anchor-link" id="push.push-1"><span class="tsd-kind-call-signature">push</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#push.push-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
453
596
  <li class="tsd-description">
454
- <div class="tsd-comment tsd-typography"><p>The function <code>pollFirst</code> removes and returns the first element of a doubly linked list, either as a node or its
455
- value, depending on the specified parameter.</p>
597
+ <div class="tsd-comment tsd-typography"><p>The push function adds a new node with the given value to the end of the doubly linked list.</p>
456
598
  </div>
457
599
  <div class="tsd-parameters">
458
600
  <h4 class="tsd-parameters-title">Parameters</h4>
459
601
  <ul class="tsd-parameter-list">
460
602
  <li>
461
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
462
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy.
463
- It specifies the criteria by which the first element should be retrieved from the doubly linked list. The default
464
- value is &#39;val&#39;, which means the first element will be retrieved by its value. Other possible values for &quot;by</p>
603
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
604
+ <div class="tsd-comment tsd-typography"><p>The value to be added to the linked list.</p>
465
605
  </div>
466
606
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
467
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>pollFirst</code> returns either the value of the first node in the doubly linked list, the first node
468
- itself, or null if the list is empty. The specific return type depends on the value of the <code>by</code> parameter. If <code>by</code>
469
- is set to &#39;node&#39;, the method returns the first node. If <code>by</code> is set to &#39;val&#39;, the method returns the value</p>
470
-
607
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
471
608
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
472
609
  <ul>
473
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L189">src/data-structures/linked-list/doubly-linked-list.ts:189</a></li></ul></aside></li>
474
- <li class="tsd-signature tsd-anchor-link" id="pollFirst.pollFirst-3"><span class="tsd-kind-call-signature">poll<wbr/>First</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#pollFirst.pollFirst-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
610
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L115">src/data-structures/linked-list/doubly-linked-list.ts:115</a></li></ul></aside></li></ul></section>
611
+ <section class="tsd-panel tsd-member"><a id="reduce" class="tsd-anchor"></a>
612
+ <h3 class="tsd-anchor-link"><span>reduce</span><a href="#reduce" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
613
+ <ul class="tsd-signatures">
614
+ <li class="tsd-signature tsd-anchor-link" id="reduce.reduce-1"><span class="tsd-kind-call-signature">reduce</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">callback</span>, <span class="tsd-kind-parameter">initialValue</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><a href="#reduce.reduce-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
475
615
  <li class="tsd-description">
476
- <div class="tsd-comment tsd-typography"><p>The function <code>pollFirst</code> removes and returns the first element of a doubly linked list, either as a node or its
477
- value, depending on the specified parameter.</p>
616
+ <div class="tsd-comment tsd-typography"><p>The <code>reduce</code> function iterates over a linked list and applies a callback function to each element, accumulating a
617
+ single value.</p>
478
618
  </div>
619
+ <section class="tsd-panel">
620
+ <h4>Type Parameters</h4>
621
+ <ul class="tsd-type-parameter-list">
622
+ <li>
623
+ <h4><span class="tsd-kind-type-parameter">U</span></h4></li></ul></section>
479
624
  <div class="tsd-parameters">
480
625
  <h4 class="tsd-parameters-title">Parameters</h4>
481
626
  <ul class="tsd-parameter-list">
482
627
  <li>
483
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
484
- <div class="tsd-comment tsd-typography"><p>The &quot;by&quot; parameter is an optional parameter of type DoublyLinkedListGetBy.
485
- It specifies the criteria by which the first element should be retrieved from the doubly linked list. The default
486
- value is &#39;val&#39;, which means the first element will be retrieved by its value. Other possible values for &quot;by</p>
628
+ <h5><span class="tsd-kind-parameter">callback</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">accumulator</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">)</span></h5>
629
+ <div class="tsd-comment tsd-typography"><p>The <code>callback</code> parameter is a function that takes two arguments: <code>accumulator</code> and <code>val</code>. It is
630
+ used to perform a specific operation on each element of the linked list.</p>
631
+ </div>
632
+ <div class="tsd-comment tsd-typography"></div>
633
+ <ul class="tsd-parameters">
634
+ <li class="tsd-parameter-signature">
635
+ <ul class="tsd-signatures">
636
+ <li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">accumulator</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">U</span></li>
637
+ <li class="tsd-description">
638
+ <div class="tsd-parameters">
639
+ <h4 class="tsd-parameters-title">Parameters</h4>
640
+ <ul class="tsd-parameter-list">
641
+ <li>
642
+ <h5><span class="tsd-kind-parameter">accumulator</span>: <span class="tsd-signature-type tsd-kind-type-parameter">U</span></h5></li>
643
+ <li>
644
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5></li></ul></div>
645
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">U</span></h4></li></ul></li></ul></li>
646
+ <li>
647
+ <h5><span class="tsd-kind-parameter">initialValue</span>: <span class="tsd-signature-type tsd-kind-type-parameter">U</span></h5>
648
+ <div class="tsd-comment tsd-typography"><p>The <code>initialValue</code> parameter is the initial value of the accumulator. It is the starting
649
+ point for the reduction operation.</p>
487
650
  </div>
488
651
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
489
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method <code>pollFirst</code> returns either the value of the first node in the doubly linked list, the first node
490
- itself, or null if the list is empty. The specific return type depends on the value of the <code>by</code> parameter. If <code>by</code>
491
- is set to &#39;node&#39;, the method returns the first node. If <code>by</code> is set to &#39;val&#39;, the method returns the value</p>
652
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">U</span></h4><p>The <code>reduce</code> method is returning the final value of the accumulator after iterating through all the
653
+ elements in the linked list.</p>
492
654
 
493
655
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
494
656
  <ul>
495
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L190">src/data-structures/linked-list/doubly-linked-list.ts:190</a></li></ul></aside></li></ul></section>
496
- <section class="tsd-panel tsd-member"><a id="pollLast" class="tsd-anchor"></a>
497
- <h3 class="tsd-anchor-link"><span>poll<wbr/>Last</span><a href="#pollLast" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
657
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L487">src/data-structures/linked-list/doubly-linked-list.ts:487</a></li></ul></aside></li></ul></section>
658
+ <section class="tsd-panel tsd-member"><a id="reverse" class="tsd-anchor"></a>
659
+ <h3 class="tsd-anchor-link"><span>reverse</span><a href="#reverse" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
498
660
  <ul class="tsd-signatures">
499
- <li class="tsd-signature tsd-anchor-link" id="pollLast.pollLast-1"><span class="tsd-kind-call-signature">poll<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#pollLast.pollLast-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
661
+ <li class="tsd-signature tsd-anchor-link" id="reverse.reverse-1"><span class="tsd-kind-call-signature">reverse</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#reverse.reverse-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
500
662
  <li class="tsd-description">
501
- <div class="tsd-comment tsd-typography"><p>The function <code>pollLast</code> removes and returns the last element in a doubly linked list, either as a node or its value,
502
- depending on the specified parameter.</p>
663
+ <div class="tsd-comment tsd-typography"><p>The <code>reverse</code> function reverses the order of the elements in a doubly linked list.</p>
503
664
  </div>
504
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>pollLast</code> returns either a <code>DoublyLinkedListNode&lt;T&gt;</code>, the value of the node (<code>T</code>), or <code>null</code>.
505
- The specific type that is returned depends on the value of the <code>by</code> parameter. If <code>by</code> is set to <code>&#39;node&#39;</code>, then a
506
- <code>DoublyLinkedListNode&lt;T&gt;</code> is returned. If <code>by</code> is set to `&#39;</p>
507
-
665
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
508
666
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
509
667
  <ul>
510
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L223">src/data-structures/linked-list/doubly-linked-list.ts:223</a></li></ul></aside></li>
511
- <li class="tsd-signature tsd-anchor-link" id="pollLast.pollLast-2"><span class="tsd-kind-call-signature">poll<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#pollLast.pollLast-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
668
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L414">src/data-structures/linked-list/doubly-linked-list.ts:414</a></li></ul></aside></li></ul></section>
669
+ <section class="tsd-panel tsd-member"><a id="shift" class="tsd-anchor"></a>
670
+ <h3 class="tsd-anchor-link"><span>shift</span><a href="#shift" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
671
+ <ul class="tsd-signatures">
672
+ <li class="tsd-signature tsd-anchor-link" id="shift.shift-1"><span class="tsd-kind-call-signature">shift</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#shift.shift-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
512
673
  <li class="tsd-description">
513
- <div class="tsd-comment tsd-typography"><p>The function <code>pollLast</code> removes and returns the last element in a doubly linked list, either as a node or its value,
514
- depending on the specified parameter.</p>
674
+ <div class="tsd-comment tsd-typography"><p>The <code>shift()</code> function removes and returns the value of the first node in a doubly linked list.</p>
515
675
  </div>
516
- <div class="tsd-parameters">
517
- <h4 class="tsd-parameters-title">Parameters</h4>
518
- <ul class="tsd-parameter-list">
519
- <li>
520
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;val&quot;</span></h5>
521
- <div class="tsd-comment tsd-typography"><p>The parameter &quot;by&quot; is of type DoublyLinkedListGetBy, which is an enum that
522
- can have two possible values: &#39;node&#39; or &#39;val&#39;. It determines the type of value that will be returned by the pollLast
523
- method. If &#39;node&#39; is specified, the method will return the</p>
524
- </div>
525
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
526
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>pollLast</code> returns either a <code>DoublyLinkedListNode&lt;T&gt;</code>, the value of the node (<code>T</code>), or <code>null</code>.
527
- The specific type that is returned depends on the value of the <code>by</code> parameter. If <code>by</code> is set to <code>&#39;node&#39;</code>, then a
528
- <code>DoublyLinkedListNode&lt;T&gt;</code> is returned. If <code>by</code> is set to `&#39;</p>
676
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The method <code>shift()</code> returns the value of the node that is removed from the beginning of the doubly linked
677
+ list.</p>
529
678
 
530
679
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
531
680
  <ul>
532
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L224">src/data-structures/linked-list/doubly-linked-list.ts:224</a></li></ul></aside></li>
533
- <li class="tsd-signature tsd-anchor-link" id="pollLast.pollLast-3"><span class="tsd-kind-call-signature">poll<wbr/>Last</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">by</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#pollLast.pollLast-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
681
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L152">src/data-structures/linked-list/doubly-linked-list.ts:152</a></li></ul></aside></li></ul></section>
682
+ <section class="tsd-panel tsd-member"><a id="toArray" class="tsd-anchor"></a>
683
+ <h3 class="tsd-anchor-link"><span>to<wbr/>Array</span><a href="#toArray" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
684
+ <ul class="tsd-signatures">
685
+ <li class="tsd-signature tsd-anchor-link" id="toArray.toArray-1"><span class="tsd-kind-call-signature">to<wbr/>Array</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span><a href="#toArray.toArray-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
534
686
  <li class="tsd-description">
535
- <div class="tsd-comment tsd-typography"><p>The function <code>pollLast</code> removes and returns the last element in a doubly linked list, either as a node or its value,
536
- depending on the specified parameter.</p>
687
+ <div class="tsd-comment tsd-typography"><p>The <code>toArray</code> function converts a linked list into an array.</p>
537
688
  </div>
538
- <div class="tsd-parameters">
539
- <h4 class="tsd-parameters-title">Parameters</h4>
540
- <ul class="tsd-parameter-list">
541
- <li>
542
- <h5><span class="tsd-kind-parameter">by</span>: <span class="tsd-signature-type">&quot;node&quot;</span></h5>
543
- <div class="tsd-comment tsd-typography"><p>The parameter &quot;by&quot; is of type DoublyLinkedListGetBy, which is an enum that
544
- can have two possible values: &#39;node&#39; or &#39;val&#39;. It determines the type of value that will be returned by the pollLast
545
- method. If &#39;node&#39; is specified, the method will return the</p>
689
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span></h4><p>The <code>toArray()</code> method is returning an array of type <code>T[]</code>.</p>
690
+
691
+ <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
692
+ <ul>
693
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L321">src/data-structures/linked-list/doubly-linked-list.ts:321</a></li></ul></aside></li></ul></section>
694
+ <section class="tsd-panel tsd-member"><a id="toArrayReverse" class="tsd-anchor"></a>
695
+ <h3 class="tsd-anchor-link"><span>to<wbr/>Array<wbr/>Reverse</span><a href="#toArrayReverse" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
696
+ <ul class="tsd-signatures">
697
+ <li class="tsd-signature tsd-anchor-link" id="toArrayReverse.toArrayReverse-1"><span class="tsd-kind-call-signature">to<wbr/>Array<wbr/>Reverse</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span><a href="#toArrayReverse.toArrayReverse-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
698
+ <li class="tsd-description">
699
+ <div class="tsd-comment tsd-typography"><p>The <code>toArrayReverse</code> function converts a doubly linked list into an array in reverse order.</p>
546
700
  </div>
547
- <div class="tsd-comment tsd-typography"></div></li></ul></div>
548
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="DoublyLinkedListNode.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedListNode</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The method <code>pollLast</code> returns either a <code>DoublyLinkedListNode&lt;T&gt;</code>, the value of the node (<code>T</code>), or <code>null</code>.
549
- The specific type that is returned depends on the value of the <code>by</code> parameter. If <code>by</code> is set to <code>&#39;node&#39;</code>, then a
550
- <code>DoublyLinkedListNode&lt;T&gt;</code> is returned. If <code>by</code> is set to `&#39;</p>
701
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span></h4><p>The <code>toArrayReverse()</code> function returns an array of type <code>T[]</code>.</p>
551
702
 
552
703
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
553
704
  <ul>
554
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L225">src/data-structures/linked-list/doubly-linked-list.ts:225</a></li></ul></aside></li></ul></section>
555
- <section class="tsd-panel tsd-member"><a id="remove" class="tsd-anchor"></a>
556
- <h3 class="tsd-anchor-link"><span>remove</span><a href="#remove" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
705
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L401">src/data-structures/linked-list/doubly-linked-list.ts:401</a></li></ul></aside></li></ul></section>
706
+ <section class="tsd-panel tsd-member"><a id="unshift" class="tsd-anchor"></a>
707
+ <h3 class="tsd-anchor-link"><span>unshift</span><a href="#unshift" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
557
708
  <ul class="tsd-signatures">
558
- <li class="tsd-signature tsd-anchor-link" id="remove.remove-1"><span class="tsd-kind-call-signature">remove</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><a href="#remove.remove-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
709
+ <li class="tsd-signature tsd-anchor-link" id="unshift.unshift-1"><span class="tsd-kind-call-signature">unshift</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#unshift.unshift-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
559
710
  <li class="tsd-description">
560
- <div class="tsd-comment tsd-typography"><p>The <code>remove</code> function removes an element at a specified index from a data structure, updating the links between
561
- nodes accordingly.</p>
711
+ <div class="tsd-comment tsd-typography"><p>The unshift function adds a new node with the given value to the beginning of a doubly linked list.</p>
562
712
  </div>
563
713
  <div class="tsd-parameters">
564
714
  <h4 class="tsd-parameters-title">Parameters</h4>
565
715
  <ul class="tsd-parameter-list">
566
716
  <li>
567
- <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
568
- <div class="tsd-comment tsd-typography"><p>The index parameter represents the position of the element to be removed in the data
569
- structure. It is of type number.</p>
717
+ <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
718
+ <div class="tsd-comment tsd-typography"><p>The <code>val</code> parameter represents the value of the new node that will be added to the beginning of the
719
+ doubly linked list.</p>
570
720
  </div>
571
721
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
572
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type tsd-kind-type-parameter">T</span></h4><p>The <code>remove</code> method returns the value of the removed element (<code>T</code>) if the removal is successful, or <code>null</code>
573
- if the index is out of bounds.</p>
574
-
722
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
575
723
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
576
724
  <ul>
577
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L347">src/data-structures/linked-list/doubly-linked-list.ts:347</a></li></ul></aside></li></ul></section>
578
- <section class="tsd-panel tsd-member"><a id="set" class="tsd-anchor"></a>
579
- <h3 class="tsd-anchor-link"><span>set</span><a href="#set" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
725
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L171">src/data-structures/linked-list/doubly-linked-list.ts:171</a></li></ul></aside></li></ul></section>
726
+ <section class="tsd-panel tsd-member"><a id="fromArray" class="tsd-anchor"></a>
727
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>from<wbr/>Array</span><a href="#fromArray" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
580
728
  <ul class="tsd-signatures">
581
- <li class="tsd-signature tsd-anchor-link" id="set.set-1"><span class="tsd-kind-call-signature">set</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">index</span>, <span class="tsd-kind-parameter">val</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#set.set-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
729
+ <li class="tsd-signature tsd-anchor-link" id="fromArray.fromArray-1"><span class="tsd-kind-call-signature">from<wbr/>Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">data</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span><a href="#fromArray.fromArray-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
582
730
  <li class="tsd-description">
583
- <div class="tsd-comment tsd-typography"><p>Updates the value of the node at the specified index.
584
- If index = 0; Value of the first element in the list is updated.
585
- If index = 3; Value of the fourth element in the list is updated.</p>
731
+ <div class="tsd-comment tsd-typography"><p>The <code>fromArray</code> function creates a new instance of a DoublyLinkedList and populates it with the elements from the
732
+ given array.</p>
586
733
  </div>
734
+ <section class="tsd-panel">
735
+ <h4>Type Parameters</h4>
736
+ <ul class="tsd-type-parameter-list">
737
+ <li>
738
+ <h4><span class="tsd-kind-type-parameter">T</span></h4></li></ul></section>
587
739
  <div class="tsd-parameters">
588
740
  <h4 class="tsd-parameters-title">Parameters</h4>
589
741
  <ul class="tsd-parameter-list">
590
742
  <li>
591
- <h5><span class="tsd-kind-parameter">index</span>: <span class="tsd-signature-type">number</span></h5>
592
- <div class="tsd-comment tsd-typography"><p>Index of the node to be updated</p>
593
- </div>
594
- <div class="tsd-comment tsd-typography"></div></li>
595
- <li>
596
- <h5><span class="tsd-kind-parameter">val</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span></h5>
597
- <div class="tsd-comment tsd-typography"><p>New value of the node</p>
743
+ <h5><span class="tsd-kind-parameter">data</span>: <span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">[]</span></h5>
744
+ <div class="tsd-comment tsd-typography"><p>The <code>data</code> parameter is an array of elements of type <code>T</code>.</p>
598
745
  </div>
599
746
  <div class="tsd-comment tsd-typography"></div></li></ul></div>
600
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4>
747
+ <h4 class="tsd-returns-title">Returns <a href="DoublyLinkedList.html" class="tsd-signature-type tsd-kind-class">DoublyLinkedList</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type tsd-kind-type-parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><p>The <code>fromArray</code> function returns a DoublyLinkedList object.</p>
748
+
601
749
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
602
750
  <ul>
603
- <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/422c24c/src/data-structures/linked-list/doubly-linked-list.ts#L303">src/data-structures/linked-list/doubly-linked-list.ts:303</a></li></ul></aside></li></ul></section></section></div>
751
+ <li>Defined in <a href="https://github.com/zrwusa/data-structure-typed/blob/dcec645/src/data-structures/linked-list/doubly-linked-list.ts#L99">src/data-structures/linked-list/doubly-linked-list.ts:99</a></li></ul></aside></li></ul></section></section></div>
604
752
  <div class="col-sidebar">
605
753
  <div class="page-menu">
606
754
  <div class="tsd-navigation settings">
@@ -621,26 +769,37 @@ If index = 3; Value of the fourth element in the list is updated.</p>
621
769
  <div class="tsd-accordion-details">
622
770
  <ul>
623
771
  <li><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-512"></use></svg><span>constructor</span></a></li>
624
- <li><a href="#_first" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_first</span></a></li>
625
- <li><a href="#_last" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_last</span></a></li>
626
- <li><a href="#_size" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_size</span></a></li>
627
- <li><a href="#first" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>first</span></a></li>
628
- <li><a href="#last" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>last</span></a></li>
629
- <li><a href="#size" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>size</span></a></li>
630
- <li><a href="#addFirst" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>First</span></a></li>
631
- <li><a href="#addLast" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Last</span></a></li>
632
- <li><a href="#get" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get</span></a></li>
633
- <li><a href="#getFirst" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>First</span></a></li>
634
- <li><a href="#getLast" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Last</span></a></li>
635
- <li><a href="#getSize" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Size</span></a></li>
772
+ <li><a href="#_head" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_head</span></a></li>
773
+ <li><a href="#_length" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_length</span></a></li>
774
+ <li><a href="#_tail" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>_tail</span></a></li>
775
+ <li><a href="#head" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>head</span></a></li>
776
+ <li><a href="#length" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>length</span></a></li>
777
+ <li><a href="#tail" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-262144"></use></svg><span>tail</span></a></li>
778
+ <li><a href="#clear" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>clear</span></a></li>
779
+ <li><a href="#delete" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>delete</span></a></li>
780
+ <li><a href="#deleteAt" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>delete<wbr/>At</span></a></li>
781
+ <li><a href="#filter" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>filter</span></a></li>
782
+ <li><a href="#find" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find</span></a></li>
783
+ <li><a href="#findLast" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find<wbr/>Last</span></a></li>
784
+ <li><a href="#findNode" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>find<wbr/>Node</span></a></li>
785
+ <li><a href="#forEach" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>for<wbr/>Each</span></a></li>
786
+ <li><a href="#getAt" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>At</span></a></li>
787
+ <li><a href="#getLength" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Length</span></a></li>
788
+ <li><a href="#getNodeAt" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Node<wbr/>At</span></a></li>
789
+ <li><a href="#indexOf" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>index<wbr/>Of</span></a></li>
636
790
  <li><a href="#insert" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert</span></a></li>
637
- <li><a href="#isEmpty" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>is<wbr/>Empty</span></a></li>
638
- <li><a href="#peekFirst" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>peek<wbr/>First</span></a></li>
639
- <li><a href="#peekLast" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>peek<wbr/>Last</span></a></li>
640
- <li><a href="#pollFirst" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>poll<wbr/>First</span></a></li>
641
- <li><a href="#pollLast" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>poll<wbr/>Last</span></a></li>
642
- <li><a href="#remove" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove</span></a></li>
643
- <li><a href="#set" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set</span></a></li></ul></div></details></div>
791
+ <li><a href="#insertAfter" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert<wbr/>After</span></a></li>
792
+ <li><a href="#insertBefore" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>insert<wbr/>Before</span></a></li>
793
+ <li><a href="#map" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>map</span></a></li>
794
+ <li><a href="#pop" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pop</span></a></li>
795
+ <li><a href="#push" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>push</span></a></li>
796
+ <li><a href="#reduce" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>reduce</span></a></li>
797
+ <li><a href="#reverse" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>reverse</span></a></li>
798
+ <li><a href="#shift" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>shift</span></a></li>
799
+ <li><a href="#toArray" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>to<wbr/>Array</span></a></li>
800
+ <li><a href="#toArrayReverse" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>to<wbr/>Array<wbr/>Reverse</span></a></li>
801
+ <li><a href="#unshift" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>unshift</span></a></li>
802
+ <li><a href="#fromArray" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>from<wbr/>Array</span></a></li></ul></div></details></div>
644
803
  <div class="site-menu">
645
804
  <nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>data-<wbr/>structure-<wbr/>typed</span></a>
646
805
  <ul class="tsd-small-nested-navigation">
@@ -698,7 +857,6 @@ If index = 3; Value of the fourth element in the list is updated.</p>
698
857
  <li><a href="UndirectedVertex.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Undirected<wbr/>Vertex</span></a></li>
699
858
  <li><a href="Vector2D.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Vector2D</span></a></li>
700
859
  <li><a href="../interfaces/AVLTreeDeleted.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>AVLTree<wbr/>Deleted</span></a></li>
701
- <li><a href="../interfaces/BinaryTreeNodeObj.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Binary<wbr/>Tree<wbr/>Node<wbr/>Obj</span></a></li>
702
860
  <li><a href="../interfaces/HeapOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Heap<wbr/>Options</span></a></li>
703
861
  <li><a href="../interfaces/IDirectedGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IDirected<wbr/>Graph</span></a></li>
704
862
  <li><a href="../interfaces/IGraph.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IGraph</span></a></li>