This Repository will contain my own implementation of the data structures using Javascript
.
Here's the list of the data structures i will be working on:
-
Linked List
- insertLast
- insertFirst
- sortedInsert
- reversWithConstantSpace
- reverse
- indexOf
- contains
- deleteFirst
- deleteLast
- delete
- size
- isPalindrome
- removeKth
- removeKthElement
- toArray
- printMiddle
- printMiddleV2
- hasLoop
- hasLoopV2
-
Array
- insert
- removeAt
- indexOf
- max
- intersect
- reverse
- reverse1
- insertAt
-
Stack
-
Queue
- Regular Queue
- enqueue
- size
- peek
- dequeue
- Circular Queue
- enqueue
- size
- peek
- dequeue
- Priority Queue
- #hasParent
- #hasLeftChild
- #hasRightChild
- #getParent
- #getParentIndex
- #getLeftChildIndex
- #getRightChildIndex
- #getLeftChild
- #getRightChild
- #heapify_up
- #heapify_down
- enqueue
- dequeue
- Regular Queue
-
Heap
-
HashTable
- HashTableUsingLinkedList
- #hash
- add
- delete
- find
- HashTableUsingArray
- #hash
- set
- get
- remove
- HashTableUsingLinkedList
-
Binary Search Tree
- Binary Search Using Array
- search
- Binary Search Tree
- isFullBinaryTree
- isCompleteBinaryTree
- isBalancedBinaryTree
- isPerfectBinaryTree
- preorder
- inorder
- search
- Binary Search Using Array
-
Graph
- GraphUsingAdjacencyList
- addVertex
- addEdge
- bfs
- bfs_rec
- #bfs_helper
- dfs
- dfs_rec
- #dfs_helper
- GraphUsingAdjacencyMatrix
- GraphUsingObjectsPointers
- GraphUsingAdjacencyList