image
The Ultimate Drawing Course Beginner to Advanced...
$179
$79
image
User Experience Design Essentials - Adobe XD UI UX...
$179
$79
Total:
$659

Description

You may be new to Data Structure or you have already Studied and Implemented Data Structures but still you feel you need to learn more about Data Structure in detail so that it helps you solve challenging problems and used Data Structure efficiently.
This
53 hours
of course covers each topic in greater details, every topic is covered on
Whiteboard
which will improve your Problem Solving and Analytical Skills. Every Data Structure is discussed, analysed and implemented with a
Practical line-by-line coding
.
Source code
for all Programs is available for you to
download
About Instructor
I am the Instructor of this course, I have been teaching this course to university students for a long period of time, I know the pulse of students very well, I know how to present the topic so that it’s easy to grasp for students.
I know how to use White board to explain the topic and also to make it memorable.

Remembering the thing and using them in right place is more important than just understanding the topic
.
After Completing Course
 After completing this course you will be confident enough to take up any challenging problem in coding using Data Structures.
Course Contents
1. Recursion
2. Arrays Representation
3. Array ADT
4. Linked List
5. Stack
6. Queues
7. Trees
8. Binary Search Tree
9. AVL Trees
10. Graphs
11. Hashing Technique
Who this course is for:
Developer who want to get Deepest knowledge of Data Structure
Undergraduate who want to Learn Data Structures Perfectly

What you'll learn

Learn various Popular Data Structures and their Algorithms.

Develop your Analytical skills on Data Structure and use then efficiently.

Learn Recursive Algorithms on Data Structures

Learn about various Sorting Algorithms

Implementation of Data Structures using C and C++

Requirements

  • You will need a copy of Adobe XD 2019 or above. A free trial can be downloaded from Adobe.
  • No previous design experience is needed.
  • No previous Adobe XD skills are needed.

Course Content

27 sections • 95 lectures
Expand All Sections
1-Before we Start
2
1.1-Instructor's Note
1.2-Introduction
2-Essential C and C++ Concepts
28
2.1-Arrays Basics
2.2-Practice : Arrays Basics
2.3-Structures
2.4-Practice : Structures
2.5-Pointers
2.6-Practice : Pointers
2.7-Reference in C++
2.8-Practice : Reference
2.9-Pointer to Structure
2.10-Practice : Pointer to Structure
2.11-Functions
2.12-Practice : Functions
2.13-Parameter Passing Methods
2.14-Practice : Parameter Passing Methods
2.15-Array as Parameter
2.16-Practice : Array as Parameter
2.17-Structure as Parameter
2.18-Practice : Structure as Parameter
2.19-Structures and Functions (Must Watch)
2.20-Converting a C program to a C++ class (Must Watch)
2.21-Practice : Monolithic Program
2.22-Practice : Modular Program
2.23-Practice : Structure and Functions
2.24-Practice : Object-Oriented Program
2.25-C++ Class and Constructor
2.26-Practice : C++ Class
2.27-Template classes
2.28-Practice : Template Class
3-Required Setup for Programming
8
3.1-Online C and C++ compiler
3.2-Setup CodeBlocks and Settings
3.3-Setup Dev-C++ and Settings
3.4-Debugging using Dev-C++
3.5-Debugging using CodeBlocks
3.6-Setup Visual Studio
3.7-Debugging using Visual Studio
3.8-Setup Xcode
4-Introduction
7
4.1-Introduction
4.2-Stack vs Heap Memory
4.3-Stack vs Heap. Continued...
4.4-Physical vs Logical Data Structures
4.5-ADT
4.6-Time and Space Complexity
4.7-Time and Space Complexity from Code
5-Recursion
34
5.1-How Recursion Works ( Tracing )
5.2-Generalising Recursion
5.3-How Recursion uses Stack
5.4-Recurrence Relation - Time Complexity of Recursion
5.5-Lets Code Recursion
5.6-Static and Global Variables in Recursion
5.7-Let's Code Static and Global in Recursion
5.8-Tail Recursion
5.9-Head Recursion
5.10-Tree Recursion
5.11-Let's Code Tree Recursion
5.12-Indirect Recursion
5.13-Let's Code Indirect Recursion
5.14-Nested Recursion
5.15-Let's Code Nested Recursion
5.16-Sum of Natural Number using Recursion
5.17-Let's Code Sum of N using Recursion
5.18-Factorial using Recursion
5.19-Let's Code Factorial using Recursion
5.20-Power using Recursion
5.21-Let's Code Power Recursion
5.22-Taylor Series using Recursion
5.23-Let's Code Taylor Series using Recursion
5.24-Taylor Series using Horner's Rule
5.25-Let's Code Taylor Series Horner's Rule - Recursion
5.26-Let's Code Taylor Series Iterative
5.27-Fibonacci Series using Recursion - Memoization
5.28-Let's Code Fibonacci
5.29-nCr using Recursion
5.30-Let's Code nCr using Recursion
5.31-Tower of Hanoi Problem
5.32-Let's Code Tower of Hanoi
5.33-Recursion
5.34-Quiz 1 Solutions
6-Arrays Representations
16
6.1-Introduction to Array
6.2-Declarations of Array
6.3-Demo - Array Declaration
6.4-Static vs Dynamic Arrays
6.5-Demo - Static vs Dynamic Array
6.6-How to Increase Array Size
6.7-Demo - Increasing Array Size
6.8-2D Arrays
6.9-Demo - 2D Array
6.10-Array Representation by Compiler
6.11-Row Major Formula for 2D Arrays
6.12-Column Major Formula for 2D Arrays
6.13-Formulas for nD Arrays
6.14-Formulas for 3D Arrays
6.15-Arrays Representation
6.16-Solutions for Quiz 2
7-Array ADT
38
7.1-Array ADT
7.2-Demo - Array ADT
7.3-Inserting in an Array
7.4-Let's Code Insert
7.5-Deleting from Array
7.6-Let's Code Delete
7.7-Linear Search
7.8-Improving Linear Search
7.9-Let's Code Linear Search
7.10-Binary Search
7.11-Binary Search Algorithm
7.12-Let's Code Binary Search
7.13-Analysis of Binary Search
7.14-Average Case Analysis of Binary Search
7.15-Get( ) Set( ) Avg( ) Max( ) functions on Array
7.16-Let's Code Get() Set() Max() on Array
7.17-Reverse and Shift an Array
7.18-Lest's Code Reversing an Array
7.19-Check if Array is Sorted
7.20-Let's Code to check if Array is Sorted
7.21-Merging Arrays
7.22-Let's Code to Merge Arrays
7.23-Set operations on Array - Union, Intersection and Difference
7.24-Let's Code Set operations on Array
7.25-Let's Code a Menu Driver program for Arrays
7.26-Let's convert C program for Array to C++
7.27-Let's Put all together in C++ program for Array
7.28-Student Challenge : Finding Single Missing Element in an Array
7.29-Student Challenge : Finding Multiple Missing Elements in an Array
7.30-Student Challenge : Finding Missing Element in an Array Method 2
7.31-Student Challenge Finding Duplicates in a Sorted Array
7.32-Student Challenge : Finding Duplicates in Sorted Array using Hashing
7.33-Student Challenge : Finding Duplicates in a Unsorted Array
7.34-Student Challenge : Finding a Pair of Elements with sum K
7.35-Student Challenge : Finding a Pair of Elements with sum K in Sorted Array
7.36-Student Challenge : Finding Max and Min in a single Scan
7.37-Array ADT
7.38-Solutions for Quiz 3
8-Strings
11
8.1-Introduction to Strings
8.2-Finding Length of a String
8.3-Changing Case of a String
8.4-Counting Words and Vowels in a String
8.5-Validating a String
8.6-Reversing a String
8.7-Comparing Strings and Checking Palindrome
8.8-Finding Duplicates in a String
8.9-Finding Duplicates in a String using Bitwise Operations
8.10-Checking if 2 Strings are Anagram (distinct letters)
8.11-Permutation of String
9-Matrices
18
9.1-Section Introduction
9.2-Diagonal Matrix
9.3-Let's Code Diagonal Matrix
9.4-C++ class for Diagonal Matrix
9.5-Let's Code C++ class for Diagonal matrix
9.6-Lower Triangular Matrix Row-Major Mapping
9.7-Lower Triangular Matrix Column-Major Mapping
9.8-Let's Code Lower Triangular Matrix in C
9.9-Let's Code Lower Triangular Matrix in C++
9.10-Upper Triangular Matrix Row-Major Mapping
9.11-Upper Triangular Matrix Column-Major Mapping
9.12-Symmetric Matrix
9.13-Tri-Diagonal and Tri-Band Matrix
9.14-Toeplitz Matrix
9.15-Menu Driven Program for Matrices
9.16-Menu Driven Program for Matrices using Functions
9.17-How to Write C++ Classes for All Matrices
9.18-Matrices
10-Sparse Matrix and Polynomial Representation
12
10.1-Sparse Matrix Representation
10.2-Addition of Sparse Matrices
10.3-Array Representation of Sparse Matrix
10.4-Let's Code to Create Sparse Matrix
10.5-Program for Adding Sparse Matrix
10.6-Let's Code to Add Sparse Matrix
10.7-Let's Code Sparse Matrix using C++
10.8-Let's Code Sparse Matrix using C++ Continued.....
10.9-Polynomial Representation
10.10-Polynomial Evaluation
10.11-Polynomial Addition
10.12-Let's Code Polynomial
11-Linked List
58
11.1-Why we need Dynamic Data Structure Linked List
11.2-About Linked List
11.3-More About Linked List
11.4-Display Linked List
11.5-Let's Code Display for Linked List
11.6-Recursive Display of Linked List
11.7-Let's Code Recursive Display for Linked List
11.8-Counting Nodes in a Linked List
11.9-Sum of All Elements in a Linked List
11.10-Let's Code Count and Sum
11.11-Maximum Element in a Linked List
11.12-Let's Code Max for Linked List
11.13-Searching in a Linked List
11.14-Improve Searching in Linked List
11.15-Let's Code Searching in Linked List
11.16-Inserting in a Linked List
11.17-Let's Code Insert for Linked List
11.18-Creating a Linked List using Insert
11.19-Creating a Linked List by Inserting at Last
11.20-Inserting in a Sorted Linked List
11.21-Let's Code Insert in Sorted Linked List
11.22-Deleting from Linked List
11.23-Let's Code Delete on Linked List
11.24-Check if a Linked List is Sorted
11.25-Let's Code to check if Linked List is Sorted
11.26-Remove Duplicates from Sorted Linked List
11.27-Let's Code to Remove Duplicates from Sorted Linked List
11.28-Reversing a Linked List
11.29-Reversing using Sliding Pointers
11.30-Recursive Reverse for Linked List
11.31-Let's Code Reversing a Linked List
11.32-Concatenating 2 Linked Lists
11.33-Merging 2 Linked Lists
11.34-Let's Code to Concatenate and Merge Linked Lists
11.35-Check for LOOP in Linked List
11.36-Let's Code to Check LOOP
11.37-Let's Code a C++ class for Linked List
11.38-Circular Linked List
11.39-Display Circular Linked List
11.40-Let’s Code Circular Linked List
11.41-Inserting in a Circular Linked List
11.42-Let's Code Insert for a Circular Linked List
11.43-Deleting From Circular Linked List
11.44-Let's Code Delete for Circular Linked List
11.45-Doubly Linked List
11.46-Let's Code Doubly Linked List
11.47-Insert in a Doubly Linked List
11.48-Let's Code Insert for Doubly Linked List
11.49-Deleting from Doubly Linked List
11.50-Let's Code Delete for Doubly Linked List
11.51-Reverse a Doubly Linked List
11.52-Let's Code Reverse for Doubly Linked List
11.53-Circular Doubly Linked List
11.54-Comparison of Linked List
11.55-Comparison of Array with Linked List
11.56-Student Challenge : Finding Middle Element of a Linked List.
11.57-Student Challenge : Finding Intersecting point of Two Linked List
11.58-Linked List
12-Sparse Matrix and Polynomial using Linked List
3
12.1-Student Challenge : Sparse Matrix using Linked List
12.2-Student Challenge: Polynomial Representation using Linked List
12.3-Let's Code Polynomial
13-Stack
23
13.1-Introduction to Stack
13.2-Stack using Array
13.3-Implementation os Stack using Array
13.4-Let's Code Stack using Array
13.5-Stack using Linked List
13.6-Stack Operations using Linked List
13.7-Let's Code Stack using Linked List
13.8-Let's Code C++ class for Stack using Linked List
13.9-Parenthesis Matching
13.10-Program for Parenthesis Matching
13.11-Let's Code Parenthesis Matching
13.12-More on Parenthesis Matching
13.13-Infix to Postfix Conversion
13.14-Associativity and Unary Operators
13.15-Infix to Postfix using Stack Method 1
13.16-Infix to Postfix using Stack Method 2
13.17-Program for Infix to Postfix Conversion
13.18-Let's Code Infix to Postfix Conversion
13.19-Student Challenge: Infix to Postfix with Associativity and Parenthesis
13.20-Evaluation of Postfix Expression
13.21-Program for Evaluation of Postfix
13.22-Let's Code Evaluation of Postfix
13.23-Stack
14-Queues
15
14.1-Queue ADT
14.2-Queue using Single Pointer
14.3-Queue using Two Pointers
14.4-Implementing Queue using Array
14.5-Let's Code Queue using Array
14.6-Let's Code Queue in C++
14.7-Drawback of Queue using Array
14.8-Circular Queue
14.9-Let's Code Circular Queue
14.10-Queue using Linked List
14.11-Let's Code Queue using Linked List
14.12-Double Ended Queue DEQUEUE
14.13-Priority Queues
14.14-Queue using 2 Stacks
14.15-Queue
15-Trees
34
15.1-Terminology
15.2-Number of Binary Trees using N Nodes
15.3-Height vs Nodes in Binary Tree
15.4-Internal Nodes vs External Nodes in Binary Tree
15.5-Strict Binary Tree
15.6-Height vs Node of Strict Binary Tree
15.7-Internal vs External Nodes of Strict Binary Trees
15.8-n-ary Trees
15.9-Analysis of n-Ary Trees
15.10-Representation of Binary Tree
15.11-Linked Representation of Binary Tree
15.12-Full vs Complete Binary Tree
15.13-Strict vs Complete Binary Tree
15.14-Binary Tree Traversals
15.15-Binary Tree Traversal Easy Method 1
15.16-Binary Tree Traversal Easy Method 2
15.17-Binary Tree Traversal Easy Method 3
15.18-Creating Binary Tree
15.19-Program to Create Binary Tree
15.20-Let's Code Creating Binary Tree
15.21-Let's Code Creating Binary Tree in C++
15.22-Preorder Tree Traversal
15.23-Inorder Tree Traversals Functions
15.24-Iterative Preorder
15.25-Iterative Inorder
15.26-Let's Code Iterative Traversals
15.27-Level Order Traversal
15.28-Let's Code Level Order Traversal
15.29-Can we Generate Tree from Traversals
15.30-Generating Tree from Traversals
15.31-Height and Count of Binary Tree
15.32-Let's Code Height and Count
15.33-Student Challenge : Count Leaf Nodes of a Binary Tree
15.34-Binary Trees
16-Binary Search Trees
12
16.1-BST intro
16.2-Searching in a Binary Search Tree
16.3-Inserting in a Binary Search Tree
16.4-Recursive Insert in Binary Search Tree
16.5-Creating a Binary Search Tree
16.6-Let's code Binary Search Tree
16.7-Deleting from Binary Search Tree
16.8-Let's Code Recursive Insert and Delete on BST
16.9-Generating BST from Preorder
16.10-Program for Generating BST from Preorder
16.11-Drawbacks of Binary Search Tree
16.12-Binary Search Trees
17-AVL Trees
8
17.1-Introduction to AVL Trees
17.2-Inserting in AVL with Rotations
17.3-General form of AVL Rotations
17.4-Let's Code LL Rotation on AVL
17.5-Let's Code LR Rotation on AVL
17.6-Generating AVL Tree
17.7-Deletion from AVL Tree with Rotations
17.8-Height Analysis of AVL Trees
18-Search Trees
9
18.1-2-3 Trees
18.2-2-3-4 Trees
18.3-Red-Black Trees Introduction
18.4-Red-Black Tree creation
18.5-Red-Black Trees vs 2-3-4 Trees
18.6-Creating Red-Black Tree similar to Creating 2-3-4 Tree
18.7-Red-Black Tree Deletion Cases
18.8-Red-Black Tree Deletion Examples
18.9-Red-Black Tree vs 2-3-4 Tree Deletion
19-Heap
8
19.1-Introduction to Heap
19.2-Inserting in a Heap
19.3-Program to Insert in a Heap
19.4-Creating a Heap
19.5-Deleting from Heap and Heap Sort
19.6-Let's Code Heap Sort
19.7-Heapify - Faster Method for creating Heap
19.8-Heap as Priority Queue
20-Sorting Techniques
29
20.1-Criteria used for Analysing Sorts
20.2-Bubble Sort
20.3-Let's Code Bubble Sort
20.4-Insertion Sort
20.5-Insertion Sort Continued....
20.6-Program for Insertion Sort
20.7-Analysis of Insertion Sort
20.8-Let's Code Insertion Sort
20.9-Comparing Bubble and Insertion Sort
20.10-Selection Sort
20.11-Program for Selection Sort
20.12-Analysis of Selection Sort
20.13-Let's Code Selection Sort
20.14-Idea behind Quick Sort
20.15-Quick Sort
20.16-Analysis of Quick Sort
20.17-Analysis of Quick Sort Continued.....
20.18-Let's Code Quick Sort
20.19-Merging
20.20-Iterative Merge Sort
20.21-Let's Code Iterative Merge Sort
20.22-Recursive Merge Sort
20.23-Let's Code Recursive Merge Sort
20.24-Count Sort
20.25-Let's Code Count Sort
20.26-Bin / Bucket Sort
20.27-Radix Sort
20.28-Shell Sort
20.29-Let's Code Shell Sort
21-Hashing Technique
9
21.1-Introduction to Hashing
21.2-Chaining
21.3-Let's Code Chaining
21.4-Linear Probing
21.5-Let's Code Linear Probing
21.6-Quadratic Probing
21.7-Double Hashing
21.8-Hash Function Ideas
21.9-Hashing
22-Graphs
17
22.1-Introduction to Graphs
22.2-Representation of Undirected Graph
22.3-Representation of Directed Graphs
22.4-Breadth First Search
22.5-Program for BFS
22.6-Depth First Search
22.7-Program for DFS
22.8-Let's Code BFS & DFS
22.9-Spanning Trees
22.10-Prim's Minimum Cost Spanning Tree
22.11-Prim's Program
22.12-Let's Code Prim's using
22.13-Kruskal's Minimum Cost Spanning Tree
22.14-Disjoint Subsets
22.15-Kruskal's Program
22.16-Let's Code Kruskla's Program
22.17-Graphs
23-Asymptotic Notations
2
23.1-Asymptotic Notations Big Oh , Omega , Theta
23.2-PDF for All Programs