Practical Data Structures & Algorithms in Java + HW
4.5 (4,388 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
21,442 students enrolled

Practical Data Structures & Algorithms in Java + HW

Go from zero to hero in the most important algorithms and data structures using Java
4.5 (4,388 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
21,442 students enrolled
Created by Imtiaz Ahmad
Last updated 8/2019
English
English [Auto], French [Auto], 6 more
  • German [Auto]
  • Indonesian [Auto]
  • Italian [Auto]
  • Polish [Auto]
  • Romanian [Auto]
  • Thai [Auto]
Current price: $96.99 Original price: $149.99 Discount: 35% off
14 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 11.5 hours on-demand video
  • 2 articles
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll 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
Course content
Expand all 45 lectures 11:39:00
+ 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
+ Linked Lists
6 lectures 01:27:05
Introduction to Linked Lists
18:31
Singly Linked List (Java Practical)
19:37
Circular Linked List (Java Practical)
11:00
Doubly Linked List - Part 1 + HW (Java Practical)
17:23
Doubly Linked List - Part 2
12:39
Doubly Linked List - Part 3 + HW (Java Practical)
07:55
+ Popular Searching Algorithms
6 lectures 01:34:59
Basic Linear Search
09:07
Binary Search (Java Practical) + HW
07:56
Recursion in Java
18:48
Recursive Search (Java Practical) + HW
19:53
Big O Notation Part 2
26:08
+ Popular Sorting Algorithms
10 lectures 02:03:30
Selection Sort (Overview)
04:15
Selection Sort (Java Practical) + HW
07:20
Insertion Sort (Overview)
03:49
Insertion Sort (Java Practical) + HW
15:49
Merge Sort (Overview)
19:15
Merge Sort Continued (The Merge Process)
19:11
Merge Sort (Java Practical) + HW
21:10
Quick Sort (Overview)
11:46
Quick Sort Continued
10:28
Quick Sort (Java Practical) + HW
10:27
+ Binary Search Trees
5 lectures 01:32:24
Binary Search Tree Overview
19:59
Java Implementation of Binary Search Tree
15:56
Deleting a Node from Binary Search Tree
09:10
Java Implementation to Delete Node
29:20
In this assignment, you'll be implementing the displayTree() method I spoke about in the previous lecture. Take your time with this coding challenge because it is an interesting problem and will exercise your coding skills. The solution is provided at the end.
ASSIGNMENT: Print Binary Search Tree
1 question
Binary Search Tree - Odds and Ends
17:59
+ Heap Data Structure
2 lectures 58:01
Heaps Data Structure Overview
23:38
Java Implementation of Heap Data Structure
34:23
In this assignment, you'll be implementing the displayHeap() method I spoke about in the previous lecture. Take your time with this coding challenge because it is an interesting problem and will exercise your coding skills. The solution is provided at the end.
ASSIGNMENT: Print the Heap
1 question
+ Hash Tables
2 lectures 01:04:19
Overview of Hash Tables
35:05
Hash Tables (Java Practical) + HW
29:14
+ Graphs
3 lectures 42:30
Graphs Overview + HW
29:17
Graphs (Java Practical) + Solution
12:49
Bonus Lecture: Lifetime Access to All My Courses
00:24
Requirements
  • The basics of programming such as if/else statements, loops & methods in some programming language
Description

Updated June 2018

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 this course is for:
  • 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