Data Structures and Algorithms Through Java In Depth
4.3 (117 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.
823 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Data Structures and Algorithms Through Java In Depth to your Wishlist.

Add to Wishlist

Data Structures and Algorithms Through Java In Depth

Learn Data Structures and Algorithms in Java to provide efficient solutions to complex problems
4.3 (117 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.
823 students enrolled
Last updated 8/2017
English
Curiosity Sale
Current price: $10 Original price: $95 Discount: 89% off
30-Day Money-Back Guarantee
Includes:
  • 10.5 hours on-demand video
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Over 100 Quiz questions
  • Ability to analyse algorithms
  • Knowledge of basic Data Structures and various sorting algorithms
  • Ability to write and trace recursive algorithms
  • Ability to write programs for different Data Structures and Algorithms
  • Confidence to face programming interviews
View Curriculum
Requirements
  • Basic knowledge of programming in any language
Description

This is a thoroughly detailed course that uses lots of animations to help you visualize the concepts.

Subtitles are available for sections - Introduction, Linked List, Stack and Queue and Recursion. Closed Captioning for rest of the sections is in progress.

This course will help you develop a strong background in Data Structures and Algorithms. The course is broken down into easy to assimilate short lectures, and after each topic there is a quiz that can help you to test your newly acquired knowledge. The examples are explained with animations to simplify the learning of this complex topic. Complete working programs are shown for each concept that is explained.

This course provides a comprehensive explanation of data structures like linked lists, stacks and queues, binary search trees, heap. Various sorting algorithms with implementation and analysis are included. Concept of recursion is very important for designing and understanding certain algorithms so the process of recursion is explained with the help of several examples.

Throughout the course, a step by step approach is followed to make you understand different Data Structures and Algorithms. Through this course you can build a strong foundation in Data Structures and Algorithms that can help you to crack coding interviews and work in the industry.

In this course, Java language is used for implementing various Data Structures and Algorithms, but you can easily implement them in any other language like C++, C#, or Python.

What students are saying about this course

"I enrolled in this course to supplement an Algorithm's class I am taking online, but struggling in. As soon as I worked through the content of this course many of the concepts I was struggling to wrap my mind around made sense. I credit this it the step by step walk-through approach used by the instructor. For each algorithm, there is a dynamic diagram used to illustrate what is happening, and why it is happening. More over, as is required of a Data Struct and Algorithm discussion, the complexity of the algorithms is analyzed and explained in detail. Truly a worthwhile buy if you need a better understanding of the content."

"Summary - a good interactive way to learn/refresh data structure. I took this course to help me to prepare for my Interview. There are mostly everything that is required for an interview. Example are pretty neat.The course is little fast paced, But you will get hang of it as you progress. Some of the examples are really great help in understanding the concept. Overall well I am happy with this."

"Awesomely explained concepts, perfectly coded practical examples."

"Explained with simple examples. Clarity was 100%"

"Excellent explanation. Very useful for Programming Interviews."

Who is the target audience?
  • Programmers looking for jobs
  • Programmers wanting to write efficient code
  • Computer Science students having Data Structures as part of their curriculum
  • Non Computer science students wanting to enter IT industry
Students Who Viewed This Course Also Viewed
Curriculum For This Course
146 Lectures
10:28:31
+
Introduction
1 Lecture 01:44
+
Introduction to Data Structures and Algorithms
12 Lectures 44:31
Data Structures and Algorithms
04:20

Measuring Running time of Algorithms
03:06

Asymptotic Analysis
03:14

Big O Notation
03:40

Finding Big O
04:24

Tight and Loose Upper Bounds
01:29

Introduction Quiz A
10 questions

Big O analysis of Algorithms
02:05

Finding Time complexity
02:57

Big O analysis of Algorithms: Examples
06:59

Worst case, Best case and Average Case Analysis
04:09

Common Complexities
03:03

Abstract Data Types
05:05

Introduction Quiz B
11 questions
+
Linked List
21 Lectures 01:45:46
Introduction
03:44

Traversing and Searching a Single Linked List
04:49

Finding references in a single linked list
05:22


Insertion in a Single Linked List ..contd
07:02

Deletion in a Single Linked List
03:19

Reversing a Single Linked List
02:38

Linked List Quiz A
9 questions

Sorting a Linked list using Bubble Sort
07:53

Merging of sorted Linked lists
11:22

Sorting a Linked list using Merge Sort
04:31

Finding and Removing a cycle in a Linked list
10:24

Doubly linked list
03:05

Insertion in a doubly linked List
06:25

Deletion from doubly linked list
05:14

Reversing a doubly linked list
02:48

Circular linked list
02:46

Insertion in a circular Linked List
03:55

Deletion in a circular linked list
03:33

Concatenation
03:01

Linked List with Header Node
04:05

Sorted linked list
05:12

Linked List Quiz B
8 questions
+
Stack and Queue
16 Lectures 01:18:32
Introduction
02:09

Stack
01:29

Array Implementation of Stack
04:51

Linked List Implementation of Stack
04:23

Queue
01:13

Array Implementation of Queue
06:46

Linked List implementation of Queue
04:35

Queue through Circular Linked List
03:14

Circular Queue
09:25

Deque
07:46

Priority Queue
03:11

Checking validity of an expression containing nested parentheses
06:01

Evaluating Arithmetc Expressions
03:22

Polish Notations
05:56

Converting infix expression to postfix expression
10:46

Evaluation of postfix expression
03:25

Stack and Queue Quiz
9 questions
+
Recursion
13 Lectures 35:16
Introduction
02:43

Flow of control in Recursive functions
02:10

Winding and unwinding phase
01:17

Factorial
02:41

Printing numbers from 1 to n
02:23

Sum of digits of an integer
03:37

Base conversion
02:22

Finding nth power of a number
01:57

Euclids Algorithms
03:14

Fibonacci Series
02:43

Tower of Hanoi
06:53

Tail recursion
01:50

Recursion vs. Iteration
01:26

Recursion Quiz
10 questions
+
Binary Tree
16 Lectures 01:03:13
Intoduction to trees
06:01

Binary Tree
06:48

Strictly Binary Tree and Extended Binary Tree
05:15

Full binary tree and Complete Binary Tree
04:58

Array Representation of Binary trees
03:26

Linked Representation of Binary Trees
01:15

Binary Tree Quiz A
10 questions

Binary Tree in Java
02:14

Traversal in Binary Tree
02:06


Inorder Traversal
04:59

Postorder Traversal
04:44

Level order traversal
03:25

Finding height of a Binary tree
03:03

Constructing Binary tree from Traversals
01:35

Constructing binary tree from inorder and preorder traversals
04:23

Constructing binary tree from inorder and postorder traversals
03:49

Binary Tree quiz B
10 questions
+
Binary Search Tree
6 Lectures 36:29
Introduction
04:27

Traversal in Binary Search Tree
01:55

Searching in a Binary Search Tree
06:38

Nodes with Minimum and Maximum key
02:58

Insertion in a Binary Search Tree
07:48

Deletion in a Binary Search Tree
12:43

Binary Search Tree Quiz
9 questions
+
Heap
6 Lectures 25:45
Introduction
02:40

Heap Representation
02:12

Insertion in Heap
07:15

Deletion
07:58

Building a heap
04:34

Heap Applications
01:06

Heap Tree Quiz
7 questions
+
Sorting
38 Lectures 02:03:30
Introduction
05:02

Sort Stability
02:25

Selection Sort
01:49

Selection Sort : Example
01:18

Selection Sort in Java
02:56

Analysis of Selection Sort
02:20

Bubble Sort
02:24


Bubble Sort in Java
04:25

Improvement in Bubble Sort
02:15

Analysis of Bubble Sort
02:04

Sorting Quiz A
10 questions

Insertion Sort
02:37

Insertion Sort : Example
02:22

Insertion Sort in Java
03:48

Analysis of Insertion sort
04:40

Shell Sort
02:24

Shell Sort : Example
02:07

Shell Sort in Java
03:42

Analysis of Shell Sort
03:29

Merging two Sorted Arrays
06:53

Recursive Merge Sort
02:29

Recursive Merge Sort in Java
04:08

Analysis of Merge Sort
00:36

Iterative Merge Sort
01:31

Iterative Merge Sort in Java
02:53

Quick Sort
06:56

Quick Sort in Java
07:10

Analysis of Quick Sort
03:00

Binary tree sort
03:05

Binary Tree Sort in Java
01:36

Analysis of Binary Tree Sort
01:14

Heap Sort
07:02

Heap Sort : Java implementation and Analysis
02:06

Radix Sort
04:17

Radix Sort : Java implementation and Analysis
05:57

Address Calculation Sort
04:50

Address Calculation Sort in Java
02:27

Analysis of Address Calculation Sort
01:02

Sorting Quiz B
10 questions
+
Searching
5 Lectures 34:41
Linear Search
05:12

Variations of Linear Search
06:53

Binary Search
06:04

Implementation of Binary Search
13:37

Analysis of Binary Search
02:55
2 More Sections
About the Instructor
Deepali Srivastava
4.2 Average rating
570 Reviews
3,264 Students
6 Courses
Author

Deepali Srivastava has a Master's degree in Mathematics and is the author of books "C in Depth" and "Data Structures Through C in Depth". She loves programming and is passionate about teaching. Whether writing a book or making a course, she always tries to present the concepts in a simplified way which helps students develop interest in the topic being taught. Her books have been appreciated by students and she hopes that her online courses will also prove to be helpful.