Course Highlights
  • Be able to know and implement various data structures and algorithms
  • Be able to write your own algorithms and understand if their running time is good or bad
Curriculum

6 Topics
Introduction
Euclid's algorithm
Bubble Sort algorithm
Why study data structures & algorithms
Correctness of an algorithm
Chapter Quiz

10 Topics
Note on this section
Introduction
How to calculate the time complexity
The RAM model of computation
Time complexity of Bubble sort algorithm
Pseudo code : Bubble sort algorithm
The Big O notation
Using Big O notation : Examples
Comparison of running times
Chapter Quiz

15 Topics
Selection Sort
Selection Sort : Pseudocode
Introduction to Insertion Sort
Applying Insertion Sort algorithm to cue balls
Insertion Sort: Pseudocode
O(n²) sorting algorithms - Comparison
In place sorting
Stable Vs Unstable Sorts
Searching elements in an un ordered array
Searching elements in an ORDERED array
Searching elements in an ORDERED array - contd.
Inserting and Deleting items in an ORDERED array
Sorting any type of object
Chapter Quiz
Assignment

13 Topics
What is a Linked List?
Implementing a Linked List in Java
Inserting a new Node
Length of a Linked List
Deleting the head node
Searching for an Item
Using java generics to parameterize the LinkedList
Doubly Ended Lists
Inserting data in a sorted Linked List
Doubly Linked List
Insertion Sort revisited
Chapter Quiz
Assignment

9 Topics
Stacks
Abstract Data Types
Implementing Stacks using Arrays
Queues
Queues using Arrays
Double Ended Queues
Double Ended Queues using Arrays
Chapter Quiz
Assignment

11 Topics
Introduction
Understanding Recursion
Tail recursion
Tower of Hanoi
Tower of Hanoi - Implementation
Merge Sort
Merge Sort - Pseudocode
Merge Step - Pseudocode
Time Complexity of Merge Sort
Chapter Quiz
Assignment

19 Topics
The Tree Data structure
Binary Trees
Binary Search Trees
Finding an item in a Binary Search Tree
Implementing the find method
Inserting an item in a Binary Search Tree
Deleting an Item : Case 1
Deleting an Item - Case 2
Deleting an Item - Case 3
Deleting an Item - Soft Delete
Finding smallest & largest values
Tree Traversal : In Order
Tree Traversal : Pre Order
Tree Traversal : Post Order
Unbalanced Trees Vs Balanced Trees
Height of a Binary Tree
Time Complexity of Operations on Binary Search Trees
Chapter Quiz
Assignment

10 Topics
Introduction
QuickSort
QuickSort: The partition step
Shell Sort
Shell Sort: Example
Counting Sort
Radix Sort
Bucket Sort
Chapter Quiz
Assignment

9 Topics
Introduction
Deleting the root
Inserting an item in a heap
Heaps as Priority Queues
Representing heaps using Arrays
Heap Sort
Building a heap
Chapter Quiz
Assignment

11 Topics
Introduction
Direct Access Tables
Hashing
Resolving collisions through chaining
The Hash function
Open Addressing to resolve collisions
Strategies for Open Addressing
Time Complexity: Open Addressing
Chapter Quiz
Assignment
Conclusion

  Write a Review

Introduction to Data Structures & Algorithms in Java

Go to Paid Course