Data Structures and Algorithms in Java

Learn Data Structures and Algorithms in Java to provide efficient solutions to complex problems
4.1 (74 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.
591 students enrolled
$19
$75
75% off
Take This Course
  • Lectures 146
  • Length 10.5 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 7/2015 English

Course Description

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

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 are the requirements?

  • Basic knowledge of programming in any language

What am I going to get from this course?

  • 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

What 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

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

Introduction
Preview
01:44
Section 1: Introduction to Data Structures and Algorithms
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
03:49
Common Complexities
03:03
Abstract Data Types
05:05
Introduction Quiz B
11 questions
Section 2: Linked List
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
Preview
04:38
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
Section 3: Stack and Queue
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
Section 4: Recursion
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
Section 5: Binary Tree
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
Preorder Traversal
Preview
05:12
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
Section 6: Binary Search Tree
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

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

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.

Ready to start learning?
Take This Course