Zenler Player
Your course is loading. Hang tight.
Data Structures and Algorithms In Java (DSA Masterclass)
Back to curriculum
0% Complete
0% Complete
Data Structures and Algorithms In Java
Source Code Repository
Data Structures and Algorithms
Measuring Running time of Algorithms
Asymptotic Analysis
Big O Notation
Finding Big O
Tight and Loose Upper Bounds
Introduction Quiz A
Big O analysis of Algorithms
Finding Time complexity
Big O analysis of Algorithms: Examples
Worst case, Best case and Average Case Analysis
Common Complexities
Abstract Data Types
Introduction Quiz B
Introduction to Linked List
Traversing and Searching a Linked List
Finding references in a Single Linked List
Difference between while(p!=NULL) and while(p.link!=NULL)
Insertion in a Single Linked List
Insertion in a Single Linked List...contd
Deletion in a Single Linked List
Reversing a Single Linked List
Linked List Quiz A
Sorting a Linked list using Bubble Sort
Merging of sorted Linked lists
Sorting a Linked list using Merge Sort
Finding and Removing a cycle in a Linked list
Doubly Linked List
Insertion in a doubly linked list
Deletion from doubly linked list
Reversing a doubly linked list
Circular linked list
Insertion in a circular Linked List
Deletion in a circular linked list
Concatenation
Linked List with Header Node
Sorted linked list
Linked List Quiz B
Introduction
Stack
Array Implementation of Stack
Linked List Implementation of Stack
Queue
Array Implementation of Queue
Linked List implementation of Queue
Queue through Circular Linked List
Circular Queue
Deque
Priority Queue
Checking validity of an expression containing nested parentheses
Evaluating Arithmetic Expressions
Polish Notations
Converting infix expression to postfix expression
Evaluation of postfix expression
Stack and Queue Quiz
Introduction
Flow of control in Recursive functions
Winding and unwinding phase
Factorial
Printing numbers from 1 to n
Sum of digits of an integer
Base conversion
Finding nth power of a number
Euclids Algorithms
Fibonacci Series
Tower of Hanoi
Tail recursion
Recursion vs. Iteration
Recursion Quiz
Introduction to trees
Binary Tree
Strictly Binary Tree and Extended Binary Tree
Full binary tree and Complete Binary Tree
Array Representation of Binary trees
Linked Representation of Binary Trees
Binary Tree Quiz A
Binary Tree in Java
Traversal in Binary Tree
Preorder Traversal
Inorder Traversal
Postorder Traversal
Level order traversal
Finding height of a Binary tree
Constructing Binary tree from Traversals
Constructing binary tree from inorder and preorder traversals
Constructing binary tree from inorder and postorder traversals
Binary Tree Quiz B
Introduction
Traversal in Binary Search Tree
Searching in a Binary Search Tree
Nodes with Minimum and Maximum key
Insertion in a Binary Search Tree
Deletion in a Binary Search Tree
Binary Search Tree Quiz
Introduction
Heap Representation
Insertion in Heap
Deletion
Building a heap
Heap Applications
Heap Tree Quiz
Introduction to Sorting Algorithms
Sort Stability
Selection Sort
Selection Sort : Example
Selection Sort in Java
Analysis of Selection Sort
Bubble Sort
Bubble Sort : Example
Bubble Sort in Java
Improvement in Bubble Sort
Analysis of Bubble Sort
Sorting Quiz A
Insertion Sort
Insertion Sort : Example
Insertion Sort in Java
Analysis of Insertion sort
Shell Sort
Shell Sort : Example
Shell Sort in Java
Analysis of Shell Sort
Merging two Sorted Arrays
Recursive Merge Sort
Recursive Merge Sort in Java
Analysis of Merge Sort
Iterative Merge Sort
Iterative Merge Sort in Java
Quick Sort
Quick Sort in Java
Analysis of Quick Sort
Binary tree sort
Binary Tree Sort in Java
Analysis of Binary Tree Sort
Heap Sort
Heap Sort : Java implementation and Analysis
Radix Sort
Radix Sort : Java implementation and Analysis
Address Calculation Sort
Address Calculation Sort in Java
Analysis of Address Calculation Sort
Sorting Quiz B
Linear Search
Variations of Linear Search
Binary Search
Implementation of Binary Search
Analysis of Binary Search
Direct Addressing
Hashing
Collisions
Hash Functions
Open Addressing : Linear Probing
Open Addressing : Quadratic Probing
Open Addressing : Double Hashing
Deletion in Open Addressed Tables
Implementation of Open Addressing
Separate Chaining
Implementation of Separate Chaining
Hashing Quiz
Introduction
Rotations
Insertion in AVL tree - 1
Insertion in AVL tree - 2
Insertion in AVL tree - 3
Insertion in AVL tree - 4
AVL Tree insertion cases
Examples of insertion in AVL Tree
Deletion in AVL Tree - 1
Deletion in AVL Tree - 2
Deletion in AVL Tree - 3
AVL Tree deletion cases
Examples of Deletion in AVL Tree
AVL Tree Quiz
Introduction
Insertion
Deletion
Introduction
Constructing and Evaluating an Expression Tree
Implementation of Expression Tree
Introduction
Inorder Traversal
Searching
Insertion
Implementation of Insertion - 1
Implementation of Insertion - 2
Deletion
Examples of Deletion from Leaf Node
Examples of Deletion from Non-Leaf Node
Implementation of Deletion
B-tree Quiz
Introduction
Terminology
Cycles
Connectivity in Undirected Graph
Connectivity in Directed Graphs
Tree and Forest
Graph Quiz A
Representation of Graph : Adjacency Matrix
Adjacency Matrix in Java
Representation of Graph : Adjacency List
Adjacency List in Java
Transitive closure of a directed graph and Path Matrix
Warshall’s Algorithm
Warshall’s Algorithm in Java
Graph Quiz B
Introduction
Breadth First Search
Implementation of Breadth First Search
Finding Shortest path in an unweighted graph
BFS Spanning Tree
BFS in Undirected Graphs : Finding Connected Components
Depth First Search
Implementation of Depth First Search through Stack
Recursive Implementation of Depth First Search
Classification of Edges in DFS of Directed Graph
Classification of Edges in DFS of Undirected Graph
Shortest Path Problem
Dijkstra's Algorithm
Dijkstra's Algorithm : Example
Dijkstra's Algorithm in Java
Introduction
Prim’s Algorithm
Prim's Algorithm : Example
Prim’s Algorithm in Java
Kruskal’s Algorithm
Kruskal's Algorithm : Example
Implementation of Kruskal's Algorithm
Kruskal’s Algorithm in Java
Graph Quiz C
About Course
Data Structures and Algorithms In Java
Preview
Source Code Repository
Algorithm Analysis
Data Structures and Algorithms
Preview
Measuring Running time of Algorithms
Preview
Asymptotic Analysis
Preview
Big O Notation
Preview
Finding Big O
Preview
Tight and Loose Upper Bounds
Preview
Introduction Quiz A
Big O analysis of Algorithms
Preview
Finding Time complexity
Preview
Big O analysis of Algorithms: Examples
Preview
Worst case, Best case and Average Case Analysis
Preview
Common Complexities
Preview
Abstract Data Types
Preview
Introduction Quiz B
Linked List
Introduction to Linked List
Preview
Traversing and Searching a Linked List
Preview
Finding references in a Single Linked List
Preview
Difference between while(p!=NULL) and while(p.link!=NULL)
Preview
Insertion in a Single Linked List
Preview
Insertion in a Single Linked List...contd
Preview
Deletion in a Single Linked List
Preview
Reversing a Single Linked List
Preview
Linked List Quiz A
Sorting a Linked list using Bubble Sort
Preview
Merging of sorted Linked lists
Preview
Sorting a Linked list using Merge Sort
Preview
Finding and Removing a cycle in a Linked list
Preview
Doubly Linked List
Insertion in a doubly linked list
Deletion from doubly linked list
Reversing a doubly linked list
Circular linked list
Insertion in a circular Linked List
Deletion in a circular linked list
Concatenation
Linked List with Header Node
Sorted linked list
Linked List Quiz B
Stack and Queue
Introduction
Preview
Stack
Preview
Array Implementation of Stack
Preview
Linked List Implementation of Stack
Preview
Queue
Preview
Array Implementation of Queue
Preview
Linked List implementation of Queue
Preview
Queue through Circular Linked List
Preview
Circular Queue
Preview
Deque
Preview
Priority Queue
Preview
Checking validity of an expression containing nested parentheses
Preview
Evaluating Arithmetic Expressions
Preview
Polish Notations
Preview
Converting infix expression to postfix expression
Preview
Evaluation of postfix expression
Preview
Stack and Queue Quiz
Recursion
Introduction
Preview
Flow of control in Recursive functions
Preview
Winding and unwinding phase
Preview
Factorial
Preview
Printing numbers from 1 to n
Preview
Sum of digits of an integer
Preview
Base conversion
Preview
Finding nth power of a number
Preview
Euclids Algorithms
Preview
Fibonacci Series
Preview
Tower of Hanoi
Preview
Tail recursion
Preview
Recursion vs. Iteration
Preview
Recursion Quiz
Binary Tree
Introduction to trees
Preview
Binary Tree
Preview
Strictly Binary Tree and Extended Binary Tree
Preview
Full binary tree and Complete Binary Tree
Preview
Array Representation of Binary trees
Preview
Linked Representation of Binary Trees
Preview
Binary Tree Quiz A
Binary Tree in Java
Preview
Traversal in Binary Tree
Preview
Preorder Traversal
Preview
Inorder Traversal
Preview
Postorder Traversal
Preview
Level order traversal
Preview
Finding height of a Binary tree
Preview
Constructing Binary tree from Traversals
Preview
Constructing binary tree from inorder and preorder traversals
Preview
Constructing binary tree from inorder and postorder traversals
Preview
Binary Tree Quiz B
Binary Search Tree
Introduction
Preview
Traversal in Binary Search Tree
Preview
Searching in a Binary Search Tree
Preview
Nodes with Minimum and Maximum key
Preview
Insertion in a Binary Search Tree
Preview
Deletion in a Binary Search Tree
Preview
Binary Search Tree Quiz
Heap
Introduction
Preview
Heap Representation
Preview
Insertion in Heap
Preview
Deletion
Preview
Building a heap
Preview
Heap Applications
Preview
Heap Tree Quiz
Sorting
Introduction to Sorting Algorithms
Preview
Sort Stability
Preview
Selection Sort
Preview
Selection Sort : Example
Preview
Selection Sort in Java
Preview
Analysis of Selection Sort
Preview
Bubble Sort
Preview
Bubble Sort : Example
Preview
Bubble Sort in Java
Preview
Improvement in Bubble Sort
Preview
Analysis of Bubble Sort
Preview
Sorting Quiz A
Insertion Sort
Preview
Insertion Sort : Example
Preview
Insertion Sort in Java
Preview
Analysis of Insertion sort
Preview
Shell Sort
Preview
Shell Sort : Example
Preview
Shell Sort in Java
Preview
Analysis of Shell Sort
Preview
Merging two Sorted Arrays
Preview
Recursive Merge Sort
Preview
Recursive Merge Sort in Java
Preview
Analysis of Merge Sort
Preview
Iterative Merge Sort
Preview
Iterative Merge Sort in Java
Preview
Quick Sort
Preview
Quick Sort in Java
Preview
Analysis of Quick Sort
Preview
Binary tree sort
Binary Tree Sort in Java
Analysis of Binary Tree Sort
Heap Sort
Heap Sort : Java implementation and Analysis
Radix Sort
Radix Sort : Java implementation and Analysis
Address Calculation Sort
Address Calculation Sort in Java
Analysis of Address Calculation Sort
Sorting Quiz B
Searching
Linear Search
Preview
Variations of Linear Search
Preview
Binary Search
Preview
Implementation of Binary Search
Preview
Analysis of Binary Search
Preview
Hashing
Direct Addressing
Preview
Hashing
Collisions
Hash Functions
Open Addressing : Linear Probing
Open Addressing : Quadratic Probing
Open Addressing : Double Hashing
Deletion in Open Addressed Tables
Implementation of Open Addressing
Separate Chaining
Implementation of Separate Chaining
Hashing Quiz
AVL Tree
Introduction
Rotations
Insertion in AVL tree - 1
Insertion in AVL tree - 2
Insertion in AVL tree - 3
Insertion in AVL tree - 4
AVL Tree insertion cases
Examples of insertion in AVL Tree
Deletion in AVL Tree - 1
Deletion in AVL Tree - 2
Deletion in AVL Tree - 3
AVL Tree deletion cases
Examples of Deletion in AVL Tree
AVL Tree Quiz
Threaded Binary Tree
Introduction
Insertion
Deletion
Expression Tree
Introduction
Constructing and Evaluating an Expression Tree
Implementation of Expression Tree
B Tree
Introduction
Inorder Traversal
Searching
Insertion
Implementation of Insertion - 1
Implementation of Insertion - 2
Deletion
Examples of Deletion from Leaf Node
Examples of Deletion from Non-Leaf Node
Implementation of Deletion
B-tree Quiz
Graph
Introduction
Preview
Terminology
Cycles
Connectivity in Undirected Graph
Connectivity in Directed Graphs
Tree and Forest
Graph Quiz A
Representation of Graph : Adjacency Matrix
Adjacency Matrix in Java
Representation of Graph : Adjacency List
Adjacency List in Java
Transitive closure of a directed graph and Path Matrix
Warshall’s Algorithm
Warshall’s Algorithm in Java
Graph Quiz B
Traversal In Graph
Introduction
Breadth First Search
Implementation of Breadth First Search
Finding Shortest path in an unweighted graph
BFS Spanning Tree
BFS in Undirected Graphs : Finding Connected Components
Depth First Search
Implementation of Depth First Search through Stack
Recursive Implementation of Depth First Search
Classification of Edges in DFS of Directed Graph
Classification of Edges in DFS of Undirected Graph
Shortest Paths In Graph
Shortest Path Problem
Dijkstra's Algorithm
Dijkstra's Algorithm : Example
Dijkstra's Algorithm in Java
Minimum Spanning Tree of a Graph
Introduction
Prim’s Algorithm
Prim's Algorithm : Example
Prim’s Algorithm in Java
Kruskal’s Algorithm
Kruskal's Algorithm : Example
Implementation of Kruskal's Algorithm
Kruskal’s Algorithm in Java
Graph Quiz C
×
This is an unpublished lesson. This lesson will not be shown for students unless you set it as Public.
Back to Dashboard
No contents are available in this lesson!
No lessons available !
Back to Dashboard
Lesson contents locked
Enroll to unlock this lesson.
Enroll to unlock
Next Lesson