Practical Data Structures & Algorithms in Java + HW

Keep it Practical! Learn in-depth the most popular Data structures & Searching Algorithms
4.6 (261 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.
1,545 students enrolled
$19
$150
87% off
Take This Course
  • Lectures 39
  • Length 9 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 3/2016 English

Course 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.

What are the requirements?

  • The basics of programming such as if/else statements, loops & methods in some programming language

What am I going to get from this course?

  • 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

What 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

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Course Overview (Watch this First!)
Preview
04:23
Section 1: Prerequisite: Intro to Object Oriented Programming
Intro to OOP Class & Object
Preview
12:35
Program Flow and Using the Constructor
11:40
Application Runtime
11:05
Java Behind The Scenes
24:07
Section 2: Data Structures
Source Code For the Course
Article
Abstract Data Types
Preview
10:23
Running Time of an Algorithm and Big O Notation
Preview
17:43
Data Structure: Stack + HW
Preview
19:28
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
Section 3: Popular Searching and Sorting Algorithms
Algorithm: Linear Search
09:07
Algorithm: Binary Search (Overview)
Preview
13: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
Section 4: Advanced Data Structures (Being Uploaded)
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
Article

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Imtiaz Ahmad, Senior Software Engineer & Trainer @ Eliminate Code Fear

I'm a passionate software consultant and programmer of enterprise software architectures. I've spent a considerable amount of time building financial software on Wall St. and worked for companies like S&P, Goldman Sachs, AOL along with helping various startups solve mission critical software problems. In my 13 years of experience, I've developed massive enterprise level software using programming languages like Java, C++, Python, PL/SQL and Ruby. I've learned many lessons along the way, and I hope to share this knowledge with aspiring software developers. I've always had a passion for teaching in seminars and corporations during my consulting projects. My online school Eliminate Code Fear gives me the opportunity to share my knowledge with students of all backgrounds and experiences across the globe! I'm really excited for this opportunity to bring to you real-world practical experience! Join my initiative and we'll work together to bring out the best programmer in you!

Ready to start learning?
Take This Course