Practical Data Structures & Algorithms in Java + HW
4.5 (1,145 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
5,981 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Practical Data Structures & Algorithms in Java + HW to your Wishlist.

Add to Wishlist

Practical Data Structures & Algorithms in Java + HW

Keep it Practical! Learn in-depth the most popular Data structures & Searching Algorithms
Best Seller
4.5 (1,145 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
5,981 students enrolled
Created by Imtiaz Ahmad
Last updated 7/2017
English
English [Auto-generated]
Current price: $10 Original price: $150 Discount: 93% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 9 hours on-demand video
  • 3 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I 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
View Curriculum
Requirements
  • The basics of programming such as if/else statements, loops & methods in some programming language
Description

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.

Who is the target audience?
  • If you're fed up with academia centric courses on Data Structures & Algorithms and want to intuitively & practically understand how to implement and the most popular algorithms and data structures in software
  • If you don't like math and want to learn popular data structures and algorithms at a deep level
Students Who Viewed This Course Also Viewed
Curriculum For This Course
40 Lectures
09:05:49
+
Course Overview (Watch this First!)
1 Lecture 04:23
+
Prerequisite: Intro to Object Oriented Programming
4 Lectures 59:27

Program Flow and Using the Constructor
11:40

Application Runtime
11:05

Java Behind The Scenes
24:07
+
Data Structures
12 Lectures 02:39:28
Source Code For the Course
00:57




Data Structure: Stack Continued
05:35

Data Structure: Queue Data Structure + HW
18:17

Data Structure: Linked List Intro
18:31

Data Structure: Singly Linked List
19:37

Data Structure: Circular Linked List
11:00

Data Structure: Doubly Linked List - Part 1 + HW
17:23

Data Structure: Doubly Linked List - Part 2
12:39

Data Structure: Doubly Linked List - Part 3 + HW
07:55
+
Popular Searching and Sorting Algorithms
16 Lectures 03:38:29
Algorithm: Linear Search
09:07


Algorithm: Binary Search (Practical) + HW
07:56

Recursion in Java
18:48

Recursive Linear & Binary Search (Practical) + HW
19:53

Big O Notation Part 2
26:08

Algorithm: Selection Sort (Overview)
04:15

Algorithm: Selection Sort (Practical) + HW
07:20

Algorithm: Insertion Sort (Overview)
03:49

Algorithm: Insertion Sort (Practical) + HW
15:49

Algorithm: Merge Sort (Overview)
19:15

Algorithm: Merge Sort Continued (The Merge Process)
19:11

Algorithm: Merge Sort (Practical) + HW
21:10

Algorithm: Quick Sort (Overview)
11:46

Algorithm: Quick Sort Continued
10:28

Algorithm: Quick Sort (Practical) + HW
10:27
+
Advanced Data Structures
7 Lectures 01:44:07
Data Structure: Binary Search Tree
19:59

Data Structure: Binary Search Tree Continued
17:59

Data Structure: Heaps Overview (Newly Added)
23:38

Data Structure: Graphs Overview + HW
29:17

Data Structure: Graphs (Practical) + Solution
12:49

Bonus Lecture: Lifetime Access to All My Courses
00:17

1-on-1 Skype Session with Mr. Imtiaz Ahmad
00:08
About the Instructor
Imtiaz Ahmad
4.6 Average rating
8,276 Reviews
53,912 Students
8 Courses
Senior Software Engineer & Trainer @ Job Ready Programmer

Imtiaz Ahmad is a highly experienced and passionate software consultant working on big data technologies and enterprise software architectures. He's spent a considerable amount of time building financial software on Wall St. and worked with companies like S&P, Goldman Sachs, AOL and JP Morgan along with helping various startups solve mission critical software problems. In his 13+ years of experience, Imtiaz has developed software in programming languages such as Java, C++, Python, PL/SQL and Ruby. He's also the founder of Job Ready Programmer - an online programming school that prepares students of all backgrounds to become professional job-ready software developers through real-world programming courses filled with practical software development projects.