The Complete Data Structures and Algorithms Course in Java

Build your strong understanding in data structures and algorithms for coding interview. Get more job offer.

3.94 (451 reviews)
Udemy
platform
English
language
Software Engineering
category
instructor
60,377
students
20.5 hours
content
Nov 2022
last update
$59.99
regular price

What you will learn

Fundamentals of Data Structures and Algorithms

Become Confident in Data Structures and Algorithms

Learn, Implement and Use Different Data Structure

Learn Popular Data Structures and Their Algorithms

Master Algorithms including 7 Sorting Algorithms

Become Confident in Algorithms Coding Interview

Description

Welcome to "Data Structures and Algorithms for Coding Interview" course.

Want to land a job at a great tech industry like Google, Microsoft, Facebook, Netflix, Amazon, or other industries but you are intimidated by the foundation of data structures and algorithms skills for the job?

Many programmers who are "self taught", feel that one of the main disadvantages they face compared to college educated graduates in computer science is the fact that they don't have knowledge about algorithms, data structures and the notorious Big-O Notation. Get on the same level as someone with computer science degree by learning the fundamental building blocks of computer science which will give you a big boost during interviews.

Here is what you will learn in this course:

>> Algorithm Run Time Analysis - Big O - O(n) Notation

>> Array (1D, 2D Array)

>> Linked List (All Types of Linked List)

>> Stack Data Structure

>> Queue Data Structure

>> Binary Tree (Array, Linked List Implementation, BFS/DFS Traversal and more)

>> Binary Search Tree

>> Binary Heap

>> AVL Tree

>> Trie Data Structure

>> Searching Algorithms

>> Recursion

>> Sorting Algorithms

>> Dynamic Programming

>> Hashing

>> Graph*

Unlike most instructors, I am not a marketer or a salesperson. I am a self taught programmer(I studied statistics not computer science) who has worked and managed teams of engineers and have been in these interviews both as an interviewee as well as the interviewer.

Taking his experience in educational statistics and coding, Barik's courses will take you on an understanding of complex subjects that you never thought.


We have 30 days money back guarantee, so nothing to lose here.


See you inside the courses!

Content

Introduction

Introduction

Algorithm Run Time Analysis (Big O Notation)

What is Algorithm Runtime Analysis
Why should we learn algorithm run time analysis?
Time Complexity Analysis Example #1
Time Complexity Analysis Example #2

Data Structure - Array

What is an array & why we need an array
Types of array
How is an array represented in RAM
Create a 1D Array
Traverse 1D Array
Get, Insert, Update & Delete Operations in 1D Array
Searching Algorithms (Linear Search + Binary Search)
Create a 2D Array
Get, Insert & Update Operations in 2D Array
Traverse 2D Array
1D Array Problem: Move Zeroes
1D Array Problem: Remove Duplicates from Sorted Array
2D Array Problem: Rotate Image
2D Array Problem: Spiral Matrix

Data Structure - Linked List

What is Linked List
Different Types of Linked Lists
Creation & Insertion Operations in SLL (Singly Linked List)
Insertion (At Index, At Begining & At End) Operations in SSL(Singly LInked List)
Travering & Searching in SLL (Singly Linked List)
Deleting Node & Deleting Entire Linked List (Singly Linked List)
Source Code for Singly Linked List (SLL)
Creation & Insertion Operations in CSLL (Circular Singly Linked List)
Traversing & Searching in CSLL (Circular Singly Linked List)
Insertion in CSLL (Circular Singly Linked List)
Deleting Node & Deleting Entire Linked List (Circular Singly Linked List)
Source Code for Circular Singly Linked List (CSLL)
Creation & Insertion Operations in DLL (Doubly Linked List)
Traversing & Searching in DLL (Doubly Linked List)
Insertion in DLL (Doubly LInked List)
Deleting Node & Deleting Enire Linked List (Doubly Linked List)
Source Code for Doubly Linked List (DLL)
Creation & Insertion Operations in CDLL (Circular Doubly Linked LIst)
Traversing & Searching in CDLL (Circular Doubly Linked List)
Insertion in CDLL (Circular Doubly Linked List)
Deleting Node & Deleting Entire Linked List (Circular Doubly Linked List)
Source Code for Circular Doubly Linked List (CDLL)
Linked List Problem: Reverse a Singly Linked List -- Recursive Solution
Linked List Problem: Reverse a Singly Linked List -- Iterative Solution

Data Structure - Stack

What is Stack
Stack Implementation Options
Array - Create, Push & Pop
Array - Peek, isEmpty, isFull & deleteStack
Source Code -- Stack Using Array
Linked List - Create, Push & Pop
Linked List - Peek, isEmpty, & deleteStack
Source Code -- Stack Using Linked List
Stack Problem: Valid Parentheses
Stack Problem: Decode String

Data Structure - Queue

What is Queue
Queue Implementation Options
Array - Linear Queue
Source Code - Linear Queue Implementation using Array
Array - Circular Queue
Source Code - Circular Queue
Linked List - Linear Queue
Source Code - Linear Queue Implementation using LInked List

Data Structure - Binary Tree

What is Tree & Why should we learn tree
Tree Terminologies :: Root, Leaf, Edge, Ancestor, ... Depth of Tree ::
Tree Terminologies :: Predecessor & Successor ::
What is Binary Tree
Types of Binary Tree
How is Tree Represented :: Linked List & Array Representation ::
Create Binary Tree & Insert Value :: Linked List Implementation ::
Search for a Value in Binary Tree
Delete Value from Binary Tree
Delete Binary Tree
Tree Traversal Techniques :: Inorder, Preorder & Postorder Traversal ::
Preorder Traversal Details :: Recursive + Iterative ::
Inorder Traversal Details :: Recursive + Iterative ::
Postorder Traversal Details :: Recursive + Iterative ::
Level Order Traversal Details :: Recursive + Iterative ::
Source Code :: Implementation of Binary Tree Using Linked List ::
Create Binary Tree & Insert Value :: Array Implementation ::
Search for a Value in Binary Tree
Delete Node from Binary Tree
Delete Binary Tree
Preorder Traversal
Inorder Traversal
Postorder Traversal
Level order Traversal
Source Code :: Implementation of Binary Tree Using Array ::

Data Structure - Binary Search Tree (BST)

What & Why is BST
Creation & Insertion in BST
Traversing BST
Searching in BST
Deletion Node in BST
Deletion of BST
Source Code :: BST ::

Data Structure - Binary Heap

What is Binary Heap & Why
Heap Implementation Options
Insert into Binary Heap
Size, IsEmpty & Peek Operation
Extract Operation
Delete Heap
Source Code :: Binary Heap::

Data Structure - AVL Tree

What & Why is AVL Tree
CreateAVLTree & Search Operation
Left-Left Condition (Insertion)
Details of Rotation & Condition
Left-Right Condition (Insertion)
Right-Right Condition (Insertion)
Right-Left Condition (Insertion)
Delete Node from AVL Tree (LL, LR, RL, RR Condition)
Delete AVL Tree
Source Code :: AVL TREE ::

Data Structure - Trie

What & Why is Trie
Representation of Trie Data Structure
Create Trie & Insert Word
Prefix Search
Search Word
Delete Word
Trie -- Source Code

Algorithm - Searching

Linear Search Algorithm
Code :: Linear Search Algorithm ::
Binary Search Algorithm
Code :: Binary Search Algorithm ::

Algorithm - Sorting

Bubble Sort
Selection Sort
Insertion Sort
Bucket Sort
Merge Sort
Quick Sort
Heap Sort

Algorithm - Recursion

What is recursion & Why we should use recursion
Format of recursion
How recursion works internally
Nth Fibonacci
Recursion vs Iteration

Algorithm - Dynamic Programming

What is Dynamic Programming & Why
Top-Down Approach
Bottom Up Approach
Longest Increasing Subsequence
House Robber
Min Path Sum
Longest Common Subsequence
0/1 Knapsack Problem
Regular Expression Matching

Screenshots

The Complete Data Structures and Algorithms Course in Java - Screenshot_01The Complete Data Structures and Algorithms Course in Java - Screenshot_02The Complete Data Structures and Algorithms Course in Java - Screenshot_03The Complete Data Structures and Algorithms Course in Java - Screenshot_04

Reviews

Germain
September 22, 2023
Thanks for this course and am very glad to learn more lessons in this course and i will practise what i have learn I recommend this course.
Akeksasndr
May 19, 2023
Author provides a very detailed explanation. Each step, each iteration is well explained. There is a lot of repetitions, but as for me, it helps to absorb the knowledge. The downside is that not all the videos are provided with the corresponding source code (e.g. some Graphs and DP videos), even if author mentions source code in the videos itself.
Mansish
April 11, 2023
The instructor is having a nice knowledge on java programming and data structures along with algorithms. But the problem was what kind of english this guy was saying throughout the course? It was very hard for me to understand the context of some topics. And the subtitles are useless here.
Curious
January 25, 2023
The accent is pretty hard to understand. It's okay if the caption is correct, but no... the caption is awful. There's some of mistake or misleading information in the course, although compared to how much content this course provide, it's relatively low. But it makes me frustrated to study with this course and made me question the integrity of this course.

Coupons

DateDiscountStatus
8/2/2021100% OFF
expired
9/3/2021100% OFF
expired
9/14/2021100% OFF
expired
9/25/2021100% OFF
expired
10/24/2021100% OFF
expired
3/5/2022100% OFF
expired
6/27/2023100% OFF
expired
6/27/2023100% OFF
expired
6/27/2023100% OFF
expired
7/17/2023100% OFF
expired
8/4/2023100% OFF
expired
8/18/2023100% OFF
expired
8/18/2023100% OFF
expired
9/18/2023100% OFF
expired
9/18/2023100% OFF
expired
9/18/2023100% OFF
expired

Charts

Price

The Complete Data Structures and Algorithms Course in Java - Price chart

Rating

The Complete Data Structures and Algorithms Course in Java - Ratings chart

Enrollment distribution

The Complete Data Structures and Algorithms Course in Java - Distribution chart

Related Topics

3731904
udemy ID
12/28/2020
course created date
8/1/2021
course indexed date
Bot
course submited by