Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Data Structures and Algorithms: In Depth DSA using Java
Role Play
Rating: 4.4 out of 5(113 ratings)
643 students

Data Structures and Algorithms: In Depth DSA using Java

Learn Java Data Structures, Algorithms (DSA) with Animated Examples, includes Dynamic Programming, Backtracking etc...
Created bySyed Mohiuddin
Last updated 11/2025
English

What you'll learn

  • Understand Complexity of Algorithms ie Time and Space they take at runtime
  • Learn and compare Algorithms used in Searching and Sorting
  • Learn different Data Structures and how to use them in applications
  • Learn how to Code and Implement various data structures and algorithms in Java

Course content

53 sections398 lectures46h 36m total length
  • Course Outcomes & Curriculum4:33
  • Why we Need Data Structures ?3:05
  • Why Learn Algorithms ?5:03

    Learn why algorithms solve problems efficiently by modeling steps as finite, rule-based instructions. Analyze and compare algorithms to predict time, resources, and complexity, including space and time.

  • Abstract Data Type (ADT)9:17
  • Installing JDK 8 on Windows4:10

    Install the Java development kit on Windows from Oracle, accept the license, run the installer, verify versions with java and javac, and prepare to use IntelliJ IDEA.

  • Installing IntelliJ on Windows7:15

Requirements

  • Some prior programming experience is required in any programming language
  • Basic knowledge of Java is needed
  • Software required for this course is open-source and freely available, and we will go through the steps of downloading and installing it.
  • This course is created on windows, but users on other platforms such as MasOS or Linux can comfortably use the required tools and have the same programing experience

Description

This course will help you in better understanding of the basics of Data Structures and how algorithms are implemented in Java. This course consists of Videos which covers the theory concepts + implementation in Java.


There’s tons of concepts and content in this course:

  • Basics of data structures & Algorithms

  • Analysis of Algorithms (Big O, Time and Space complexity)

  • Recursion & Analysis of Recursive Algorithms

  • Searching Algorithms

  • Sorting Algorithms

  • Linked List

  • Stacks

  • Queues

  • Binary Trees

  • Binary Search Trees

  • Balanced Binary Search Trees

  • Priority Queues and Heaps

  • Hashing

  • Graphs

  • Graph Traversal Algorithms

Followed by Advanced Topics of Algorithms:

  • Sets and Disjoint Sets

  • Divide and Conquer Approach - Introduction

  • Divide and Conquer - Binary Search

  • Divide and Conquer - Finding Maximum and Mininum

  • Divide and Conquer - Merge Sort

  • Divide and Conquer - Quick Sort

  • Divide and Conquer - Selection Algorithm

  • Divide and Conquer - Strassens Matrix Multiplication

  • Divide and Conquer - Closest Pair

  • Divide and Conquer - Convex Hull

  • Greedy Method - Introduction

  • Greedy Method - Knapsack Problem

  • Greedy Method - Job Sequencing with Deadlines

  • Greedy Method - Mininum Cost Spanning Tree (Prim's & Kruskal's Algorithms)

  • Greedy Method - Optimal Storage on Trees

  • Greedy Method - Optimal Merge Pattern

  • Greedy Method - Single Source Shortest Path (Dijkstra's Algorithm)

  • Dynamic Programming - Introduction

  • Dynamic Programming - Multistage Graphs

  • Dynamic Programming - All Pairs Shortest Path

  • Dynamic Programming - Single Source Shortest Path

  • Dynamic Programming - Optimal Binary Search Trees

  • Dynamic Programming - 0/1 Knapsack Problem

  • Dynamic Programming - Reliability Design

  • Dynamic Programming - Travelling Salespersons Problem

  • Backtracking - Introduction

  • Backtracking - n-Queesn Problem

  • Backtracking - Sum of Subsets Problem

  • Backtracking - Graph Coloring Problem

  • Backtracking - Hamiltonian Cycles Problem

  • Backtracking - 0/1 Knapsack Problem

  • Branch & Bound - Introduction

  • Branch & Bound - n-Queens Problem

  • Branch & Bound - Job Sequencing Problem

  • Branch & Bound - 0/1 Knapsack Problem


Again, each of these sections includes detailed videos tutorial.


Who this course is for:

  • Anyone who wants to learn Data Structures and Algorithms using Java