- Linked list and its common operations
- Applications
- Implementation
- LinkedListNode
- What is a pointer?
- constructor
- toString
- LinkedList
- constructor
- prepend
- append
- delete
- Linked list before delete method is called
- delete method is called
- Linked list after delete method is called
- deleteTail
- deleteHead
- find
- toArray
- toString
- Complexities
- Problems Examples
- Quiz
- References
- Tree
- What is a node?
- Binary Tree
- Types of Binary Trees
- Binary Search Tree
- Application
- Basic Operations
- Searching (Lookup)
- Self-Balancing
- Inserting
- Removing.
- Traversing
- Usage Example
- Implementation
- BinarySearchTreeNode
- constructor
- find()
- insert()
- remove()
- traverseInOrder()
- setLeft()
- setRight()
- setData()
- setValue()
- contains()
- removeChild()
- replaceChild()
- copyNode()
- findMin()
- findMax()
- toString()
- BinarySearchTree
- Operations Time Complexity
- Problems Examples
- Quiz
- References
- Application
- Basic Operations
- Usage Example
- Implementation
- Storing Heap as Array
- Storing Objects in Heap
- Class Comparator
- constructor
- defaultCompareFunction()
- equal()
- lessThan()
- greaterThan()
- lessThanOrEqual()
- greaterThanOrEqual()
- Class MinHeap
- constructor
- Helper Methods
- getLeftChildIndex
- getRightChildIndex
- getParentIndex
- hasParent
- has
- hasLeftChild
- hasRightChild
- leftChild
- rightChild
- parent
- swap
- isEmpty
- find
- toString
- Internal Methods that Preserve Heap Property
- heapifyUp
- heapifyDown
- Main Heap Methods
- peek
- poll
- add
- remove
- Complexities
- Problems Examples
- Quiz
- References
- What is a vertex?
- Application
- Graph Representation
- Adjacency Matrix
- Adjacency List
- Adjacency Matrix and Adjacency List Comparison
- Basic Operations
- Usage Example
- Implementation
- GraphEdge
- constructor
- getKey()
- toString()
- GraphVertex
- constructor
- addEdge()
- deleteEdge()
- getEdges()
- hasEdge()
- getNeighbors()
- hasNeighbor()
- findEdge()
- deleteAllEdges()
- getKey()
- toString()
- Graph
- constructor
- addVertex()
- getVertexByKey()
- getAllVertices()
- getAllEdges()
- addEdge()
- deleteEdge()
- findEdge()
- toString()
- Operations Time Complexity
- Problems Examples
- Quiz
- References
- Intro
- What is a signed number?
- Applications
- What is two's complement?
- Code
- Get Bit
- Set Bit
- Clear Bit
- Update Bit
- isEven
- isPositive
- Multiply By Two
- Divide By Two
- Switch Sign
- Multiply Two Signed Numbers
- Multiply Two Unsigned Numbers
- Count Set Bits
- Count the Bit Difference
- Count the Number of Significant Bits of a Number
- Problems Examples
- Quiz
- References
- The Task
- The Algorithm
- Algorithm Definition
- Algorithm Steps
- Priority Queue Usage in the Algorithm
- Step by Step Example
- Application
- Usage Example
- Implementation
- Importing Dependencies
- Describing Types
- Implementing the dijkstra() function
- Complexities
- Time Complexity
- Auxiliary Space Complexity
- Problems Examples
- References
JavaScript Algorithms
Chapter 3:
Linked List
Chapter 7:
Binary Search Tree (BST)
Chapter 8:
Binary Heap
Chapter 10:
Graphs
Chapter 11:
Bit Manipulation
Chapter 26:
Dijkstra's Algorithm
This page is a preview of JavaScript Algorithms