Practical Data Structures & Algorithms in Java + HW (Udemy.com)
Go from zero to hero in the most important algorithms and data structures using Java
Created by: Job Ready Programmer
Last updated November 2025
What you will learn
- Gain Confidence for Coding Interviews
- Learn The Most Practical and Popular Data Structures & Algorithms in-depth rather than a rushed course on Computer Science
- Get practice translating sudo code & implementing algorithms with Assignments and Solutions
- Get an intuitive understanding of how many of the popular algorithms and data structures behave
Quality Score
Overall Score : 88 / 100
Course Description
Welcome to Practical Data Structures & Algorithms in Java + Homeworks Course!
Are you a beginner eager to master Data Structures and Algorithms in Java?
Do you want to confidently tackle coding interviews or enhance your programming skills?
Have you struggled with understanding how data structures work under the hood or how to apply algorithms in real-world scenarios?
Are you seeking a structured, hands-on course that combines theory, implementation, and real-life applications?
If you answered yes to any of these questions, you’re in the right place.
This course is meticulously designed to provide a step-by-step approach, demystifying Data Structures and Algorithms while preparing you for practical programming challenges and career advancement.
What Makes This Course Stand Out?
Comprehensive and Structured Content: Start from the basics and progress to advanced topics, with each concept logically and clearly explained.
Learn by Doing: Gain hands-on experience through practical assignments and real-life examples for every data structure and algorithm covered.
Beginner-Friendly: New to programming or Java? No worries! This course is designed to guide you from the ground up.
Deep Understanding: Go beyond surface-level knowledge to truly grasp how data structures and algorithms work under the hood.
Career-Ready Skills: Equip yourself with in-demand knowledge to ace technical interviews and write efficient, elegant code.
Homework with Solutions: Every assignment includes step-by-step solution videos to reinforce your learning.
Why This Course Is Essential:
Data Structures and Algorithms are the cornerstone of programming. By mastering them, you’ll unlock the ability to design optimized solutions, solve complex problems, and boost your programming confidence. This course bridges the gap between theory and practice, ensuring you’re job-ready and technically proficient.
Latest Course Updates:
(2025): Added beginner-friendly coding exercises on Array, Stack, Queue and Linked Lists.
(Dec 2024): Added a new coding exercise with step-by-step solutions for Hash Table.
(Nov 2024): Maintained and updated all course coding files, exercises and solutions in GitHub repository.
(Oct 2024): Added a comprehensive coding exercises on Linked List & Array and supplementary reading material.
(Sept 2024): Added NEW CONTENT on the Collections Framework and new coding exercise on Queue data structure.
(2023): Enhanced the course with improved online community support to help students collaborate and resolve queries efficiently.
Important Announcement: This course will be constantly updated with more assignments, quizzes, and lectures to enrich your knowledge of data structures and algorithms.
Topics covered in the Practical Data Structures & Algorithms in Java Course:
Intro to Object-Oriented Programming in Java
Classes and Objects
Program Flow and Constructor
Application Runtime
Java behind-the-scenes
The Collections Framework
Lists and Custom Types
HashSet, LinkedHashSet and Hashcode
Collection Methods
Comparable Interface
HashMap, LinkedHashMap and TreeMap
Running Time of an Algorithm and Big O Notation
Array
Stack
Queue
Linked List
Singly Linked List
Doubly Linked List
Circular Linked List
Binary Search Trees
Heap
Hash Tables
Graph
Searching Algorithms
Linear Search
Binary Search
Recursive Search
Sorting Algorithms
Selection Sort
Quick Sort
Merge Sort
Insertion Sort
Recursion
KEY BENEFITS OF DATA STRUCTURES AND ALGORITHMS MASTERY
If I had to pick the single most important topic in software development, it would be data structures and algorithms. Think of it as the fundamental tools available to every computer programmer. The better you get with these tools the more confident a programmer you’ll become. Software development is a vast field requiring all kinds of skill-sets but getting good at this single topic is a huge leap forward in your programming journey and it’ll certainly pave the way for a successful programming career.
The topics in this course are going to cover data structures such as lists, stacks, queues, trees and some of the most powerful sorting, searching, and graph algorithms that have revolutionized the field of computing. Throughout the course I keep things practical and provide real life examples of how all of these algorithms work and when & where they can be applied to write efficient computer programs.
I’ll be moving at a slow and steady pace introducing each topic followed by a PRACTICAL programming assignment so you can immediately apply what you learned. All homework assignments in the course will be accompanied with step by step solution videos demystifying each problem as I code up the solutions. My goal is to make sure, that after you complete this course you feel completely confident going into a coding interview because you will have built a solid foundation in computer programming. So go ahead and signup and I’ll see you in the course.
STUDENT REVIEWS
Don’t just take it from me, take it from other students that have taken this course.
★★★★★ Here’s some testimonials from students that took this course ★★★★★
"Explanations are just amazing. It cant get simpler than this. Thanks for creating this course." - Suman
Instructor Details
- 4.4 Rating
5,685 Reviews
Job Ready Programmer
You can’t learn programming from reading books or online fill-in-the-blank type tutorials. Especially the online tutorials with browser based exercises where you code directly in your browser. The problem with that approach is that it doesn’t provide practical experience. It provides an illusion of learning something as it tugs you along to complete an assignment that’s more of a fill-in-the-blank type problem. A student feels like they’ve learned something but that knowledge does not stick. Unfortunately that experience will not help in an interview nor an actual project. Valuable time ends up going to complete waste. At JRP (JobReadyProgrammer), we don’t follow hype. We do what works! We take a traditional route to teaching how to code advancing slowly & patiently in the lectures often repeating key concepts in multiple different ways to help students really solidify the knowledge and mold their foundation to discover how to code properly and then boy do we test the skills! Students are put right in the middle of a practical real-world programming assignment to apply everything they've learned. So enough of those “key in the next few commands to fill in the puzzle and we’ll advance you” kind of tutorials. Here you’ll need to roll up your sleeves and get to work on solving practical programming assignments.
More courses by Job Ready Programmer
The Complete Oracle SQL Certification Course (2026)
4.6 (55,453 Reviews)
Provider: Udemy
Time: 17.2h
$199.99
The Complete Java Certification Course (2025)
4.7 (30,462 Reviews)
Provider: Udemy
Time: 18.1h
$174.99
Complete Elasticsearch Masterclass with Logstash and Kibana (2025)
4.4 (8,495 Reviews)
Provider: Udemy
Time: 6.2h
$74.99
Absolute Introduction to Object Oriented Programming in Java (2025)
4.4 (7,080 Reviews)
Provider: Udemy
Time: 2h
$15.99
The Complete Python Developer Certification Course (2025)
4.5 (5,611 Reviews)
Provider: Udemy
Time: 12.8h
$99.99
Reviews
By Dragos Popescu on 9/28/2021
A lot of very useful information, the theory is very nicely explained. The instructor has a very calm and step-by-step delivery of everything that he teaches. The problem for me was that I am an absolute beginner and most times I felt overwhelmed by the coding part (not the theory, very clear there) because it was a lot of new things that I had to understand while actually implementing. I'm sure that people who studied computer science in school or have worked as programmers find this course fits like a glove. Having said that, I think people like me (level zero) should have been better represented in the level of coding within this course.
By Daniel R on 4/28/2021
This has to be the best $12 I've spent on an online course. This course completely demystifies data structures and algorithms. Originally, I had feared learning the topic because of how notoriously "difficult" it is to grasp. But I promise you this isn't just another fancy online Ivy League course that uses a bunch of fancy terms without explaining anything. Imtiaz does an EXCELLENT job of explaining all the data structures and algorithms by starting from the VERY fundamentals of Java. I promise you will gain foundational knowledge of DS&A by taking this course. The learning curves does increases around Section 7 or 8 and forward but Imtiaz still attempts to explain as best he can. I cannot thank Imtiaz enough for making such a great course, honestly!
By April McBroom on 1/16/2021
This is a good to be introduced into Data Structures and Algorithms. The concepts were explained at a pace where you could pause the videos and write notes. Some minor upgrades would be including a homework assignment at the earlier stages of the course but there are homework assignments following afterwards. Also, sometimes the assistant for the course didn't answer questions(I had one question sit for 12 days waiting for a response until I found it on my own) or answered them wrong(I was missing the main method but they asked if I had the correct package name), or was copy-pasted from the internet(there was a definition to a question that was taken from an online resource instead of their own. Copy and pasted answers are not a good indicator of knowledge). There is also issue of not talking about the mathematical part of Big O Notation, which is what is defiantly needed in order to understand Time Complexity and Space Time Complexity of an algorithm. I wish it would have gone into more depth about the Big-O Notation and breaking down the algorithms in the code to see how much time it would take to complete using O notation. It's a good course to start with but your better off getting the fuller details on another course or at school.
By Ashish Kumar on 10/21/2020
Quite and clear , thanks.
By L D on 10/17/2020
Instructor has put quality and way of teaching is amazing and I highly recommend. Not like just any other out there just selling the course without doing homework and proper content.
By Afreeng on 10/5/2020
It is actually helping me to learn dsa through the wonderful visualisation provided.
By Knowledge Harris on 9/27/2020
He is very detailed and easy to understand
By srinivas shanigarapu on 9/19/2020
Really Awesome Lectures, Explained Clear Crystal Way All Data Structures In Java
By Tiam Abderezai on 9/6/2020
You're the simply best programming instructor I've ever had!!!!
By andrew yang on 9/3/2020
very clear explanation. make the whole algorithm makes sense. tks.
By Mohd. Kamaluden on 9/3/2020
Good instructor with concise teaching. The homework were too hard for me tho, but it's all good since I'm inexperienced in data structures.
By Jaco Gerber on 9/2/2020
I really enjoyed the course and learned a lot. I can really recommend this course. Imtiaz have the ability to explain complex topics in a logical and easy way, that make understand easier. I also like that he contentiously encourage is students to work through issues on their own.









