Course Preview

Data Structures and Algorithms Course

Self Paced Course

Video Course

Quick Notes

Hands-on Labs

Skill Tests

Data Structures and Algorithms Course Overview

The Data Structures and Algorithms Course is tailored for individuals in the software engineering field who aspire to elevate their careers by securing interviews with some of the world's most prestigious companies. This program is meticulously designed to equip you for these crucial interviews, covering a comprehensive range of skills, from problem-solving techniques to coding proficiency. You'll gain invaluable hands-on experience by tackling over 100 data structures and algorithm problems. The course commences with problem-solving exercises related to each data structure and algorithm, preparing you thoroughly for interviews with top-tier product-based companies such as Meta, Microsoft, Amazon, Adobe, Netflix, and Google.

DSA Course objectives

Participants in this training will learn data structures and algorithms course and at the completion of this course, attendees will be able to:

1. Identify techniques to design algorithms and measure their efficiency.
2. Sort data by using bubble sort, selection sort, insertion sort, shell sort, quick sort, and merge sort.
3. Search data by using linear search and binary search techniques.
4. Store and search data using hashing.
5. Solve problems using arrays, lists, linked lists, queues, and stacks.
6. Solve problems using non-leaner data structures like trees, and graphs.

Tools and Technologies Covered

Arrays
Big-O
Complexity Analysis
Stack
Queue
Tree
Graph
VS Code IDE

Included in this Data Structures and Algorithms Course

•   Video Course 122 Videos
•   Quick Notes 35 Notes
•   Labs 81 labs
•   Skill Tests 9 Tests

DSA and Big O

Data Structure Introduction Preview 04m 32s
Non-Linear Data Structure 09m 25s
Asymptotic analysis 14m 31s
Asymptotic Explanation 20m 23s

Array

Array Introduction 09m 58s
Array Traversal 10m 46s
Array insert data 06m 21s
Array Bound Checking 16m 52s
Array Insertion 12m 35s
Deletion in Array 07m 38s
2D array 13m 47s
Array List Integer 20m 47s

Array Questions

Array List String 18m 17s
Storing Heterogeneous Element in array 13m 20s
Array Question1 41m 40s
Array Question2 18m 48s
Sum Leet code 19m 24s
buy and sell Stock leetcode 10m 34s
Product of Array Except Self 16m 56s
Container With Most Water 19m 45s
Spiral Matrix 30m 10s
Sudoku valid 29m 36s

String

String Preview 01m 00s
String literals 09m 15s
Immutable String 05m 33s
String Methods 21m 33s
StringBuilder vs String Buffer 04m 42s
String Builder and Buffer example 11m 29s
Valid Palindrome 08m 05s
Valid Anagram 15m 23s
Longest Substring Without Repeating Characters 17m 22s
Find All Anagrams in a String 31m 07s
Largest Number 19m 26s
Largest Number 1 09m 06s

Linear Search

Linear search Preview 01m 42s
Linear Search Implementation 08m 04s
Linear Search Questions 25m 56s

Binary Search

Binary Search 01m 34s
Binary Search implementation 12m 19s
First and Last Occurence 23m 33s

Arrays Searching

Search in Rotated Sorted array 19m 31s
Search in rotated Sorted Array 10m 39s
Find Minimum in Rotated Sorted Array 04m 59s

Bubble, Selection and Insertion Sort

Bubble Sort 01m 28s
Bubble Sort Implementation 07m 33s
Selection Sort 02m 05s
Selection Sort Implementation 07m 15s
Insertion Sort 01m 06s
Insertion Sort implementation 10m 18s

Merge, Quick and Counting Sort

Merge Sort 09m 58s
Merge Sort Implementation 20m 22s
Quick Sort 08m 51s
Quick Sort Implementation 08m 51s
Counting Sort 02m 46s
Counting Sort Implementation 17m 57s

Bucket, Find Kth Element and Find Pages

Bucket Sot 01m 03s
Bucket Sort Implementation 15m 47s
FindKthElement 19m 26s
Kth largest element 22m 27s
Find Pages 09m 33s
Find Pages PART 2 20m 01s
Theif problem 13m 19s
Minimum swaps 15m 06s

Hashing

Hashing Introduction Preview 02m 35s
Hasing Function 17m 35s
Hash map or Hash table 18m 34s

Phonebook

Phonebook 1 19m 01s
Phonebook 2 02m 26s
Phonebook by HashMap 13m 43s
HashMap different methods 21m 13s
Symmetric pair Example 14m 27s
First Unique Character 13m 51s

Hash Set

HashSet Example 12m 31s
Contiguous Integers in array 16m 38s
Pair with given Sum 07m 40s
Itinary fromticket 30m 59s
Match Locks and Keys 12m 34s

Stack

Stack 03m 38s
Stack Implementation by library 14m 58s
Stack Implementation using Array 23m 16s
Stack Implementation using LinkedList 22m 09s
Valid Parentheses 16m 36s
Simplify Path 1 12m 27s
Simplify path 2 09m 27s
Evaluate Reverse Polish Notation 25m 12s
Trapping Rainwater 24m 04s
Longest valid Parentheses 24m 13s
Basic Calculator 26m 05s

Queue

Introduction to Queue Preview 04m 49s
Queue Implementation 13m 16s
Queue Implementation user defined function 28m 12s
Implement Stack using Queues 25m 32s
Implement Queue using Stack 21m 23s
First Unique Character in a String 26m 01s
First Unique Character in a String 26m 01s
Reveal Cards in Increasing Order 19m 32s
Find the Winner of the Circular Game 17m 23s

Singly LinkedList Implementation 01h 10m 14s

Linked List Cycle II 21m 03s

Happy Numbers 15m 50s
Middle of the Linked List 07m 10s
Reverse Linked List II 28m 35s
Reverse Nodes in k-Group 23m 33s

Tree and Binary Tree

Introduction to Tree 23m 00s
Binary Tree Traversal Whiteboard 55m 45s
Traversal DFS 38m 15s
Tree Traversal BFS 16m 01s
Max Min Search SumofLeafNodes 26m 02s
White Board Explanation of Max,Min ,SumOfLeafNodes 12m 14s
Mirror a Tree (Code) 19m 36s
Spiral level Order traversal 1 30m 50s
Spiral level Order traversal 2 01m 33s
Quick NotesNotes (35)

Data Structures & Algorithms

00:05:00

Big O in Data Structure

00:06:00

Array in Data Structures

00:07:00

String in Data Structure

00:02:00

Hashing in Data Structure

00:04:00

HashMap in Data Structure

00:01:00

Hash Table in Data Structure

00:01:00

HashSet in Data Structure

00:01:00

Linear Search in Data Structure

00:02:00

Binary Search in Data Structure

00:02:00

Bubble Sort in Data Structure

00:03:00

Selection Sort in Data Structure

00:02:00

Insertion Sort in Data Structure

00:03:00

Merge Sort in Data Structure

00:03:00

Quick Sort in Data Structure

00:02:00

Counting Sort in Data Structure

00:03:00

Bucket Sort in Data Structure

00:03:00

Heap Sort in Data Structure

00:04:00

Shell Sort in Data Structure

00:03:00

00:02:00

00:03:00

Singly Linked List in Data Structure

00:02:00

Doubly Linked List in Data Structure

00:03:00

Circular Linked List in Data Structure

00:02:00

Stack in Data Structure

00:04:00

Queue in Data Structure

00:04:00

Trees in Data Structure

00:06:00

Binary Tree in Data Structure

00:05:00

Binary Search Tree in Data Structure

00:03:00

AVL Tree in Data Structure

00:05:00

B Tree in Data Structure

00:04:00

K-Dimensional Tree in Data Structures

00:04:00

Spanning Tree in Data Structures

00:05:00

Segment Tree in Data Structures

00:02:00

Suffix Array and Suffix Tree in Data Structures

00:04:00

Hands-On LabsLabs(81)

Java: Count the frequency of an element in an Array

00:20:00

Java: Ceiling in a Sorted Array

00:25:00

Java: Construct a linked list from 2D matrix

00:30:00

Java: Reverse a Stack using Recursion

00:25:00

Java: Check whether a Binary Tree is BST or Not

00:30:00

Java: Two Sum

00:30:00

Java: Two Sum

00:30:00

Java: Deletion in a Binary Tree

00:40:00

Java: Find next right node of a given key

00:30:00

Java: Big-O-Binary Search Algorithm

00:15:00

Java: Traversing directory in Java using BFS

00:20:00

Java: Check if two nodes are cousins in a Binary Tree

00:50:00

Java: Contains Duplicate

00:20:00

Java: Merge Sorted Arrays

00:25:00

Java: Check whether the two Binary Search Trees are Identical or Not

00:35:00

Java: Delete consecutive same words in a sequence

00:25:00

Java: Convert given Binary Tree to Doubly Linked List in Linear Time

00:25:00

Java: Count 1’s in a Sorted Binary Array

00:20:00

Java: Find all triplets with zero sum

00:20:00

00:20:00

Java: Find a Fixed Point (Value equal to Index) in given Array

00:25:00

Java: Count Nodes in Circular Linked List

00:25:00

Java: Sort a Stack using another stack

00:30:00

Java: Find the Closest Element in Binary Search Tree

00:35:00

Java: Search Insert Position

00:25:00

Java: Longest Substring without Repeating Characters

00:30:00

Java: Convert Binary Tree to Doubly Linked List

00:50:00

Java: Minimum time required to rot all oranges

00:40:00

Java: Height of a Generic Tree from Parent Array

00:50:00

Java: Group Anagrams

00:35:00

00:30:00

Java: Insertion in a Binary Tree in Level Order

00:35:00

Java: Next Greater Element

00:30:00

Java: Delete all Prime Nodes from a Doubly Linked List

00:35:00

Java: Search an Element in a Sorted and Rotated Array

00:30:00

Java: Meeting Rooms

00:25:00

Java: Merge Two Sorted Arrays

00:20:00

Java: Two Elements whose Sum is Closest to Zero

00:30:00

Java: Deletion from a Circular Linked List

00:35:00

Java: Trapping rain water

00:30:00

Java: Find right Sibling of a binary tree with parent pointers

00:40:00

Java: Find Peak Element

00:30:00

Java: Valid Sudoku

00:40:00

Java: Find Distance between two nodes of a Binary Tree

00:50:00

Java: Binary Tree to Binary Search Tree Conversion

00:40:00

Java: Subarray Sum Equals K

00:25:00

Java: Search in Rotated Sorted Array

00:25:00

Java: Largest rectangle in histogram

00:25:00

Java: Remove Duplicates from a sorted Linked List

00:25:00

Java: Search in an Almost Sorted Array

00:25:00

Java: Minimum Number of Jumps to Reach End in Array

00:25:00

Java: Move all Zeros to the beginning of an array

00:25:00

Java: Median of Two Sorted Arrays of Different Sizes

00:30:00

Java: Reverse a Doubly Linked List

00:20:00

Java: 3 Sum

00:25:00

Java: Minimum Window Substring

00:30:00

Java: Design HashSet

00:25:00

Java: Search a 2D Matrix

00:20:00

Java: Traversal of Circular Linked List

00:25:00

Java: A Pair with a Given Sum in the Rotated Sorted Array

00:25:00

Java: Remove Duplicates from an Array

00:20:00

Java: Rotate a Matrix by 90 degrees

00:25:00

Java: Sort Elements by Frequency

00:30:00

Java: Find Minimum in Rotated Sorted Array

00:25:00

Java: Find Minimum in Rotated Sorted Array II

00:35:00

Java: Sort a Linked List of 0s, 1s and 2s

00:35:00

Java: Rotate an Array to the left

00:20:00

Java: Camel Case of a given Sentence

00:20:00

Java: Find Missing Elements of a Range

00:25:00

Java: Sort a Nearly Sorted (or K sorted) Array

00:20:00

Java: Count ways to increase LCS length of two Strings by one

00:25:00

Java: Minimum rotations required to get the same string

00:15:00

Java: Chocolate Distribution Problem

00:30:00

Java: Minimum Swaps required to convert binary tree to binary search tree

00:30:00

Java: Multiply Large Numbers represented as Strings

00:25:00

Java: Find Itinerary from a given list of tickets

00:25:00

Java: Count Distinct Occurrences as a Subsequence

00:30:00

Java: Sort a Matrix in all way Increasing Order

00:20:00

Java: Find the length of the largest subarray with 0 Sum

00:25:00

Java: Longest Increasing Consecutive Subsequence

00:25:00

Java: Find Whether an Array is a Subset of Another Array

00:20:00

Skill TestsTests (9)

Introduction to Data Structures

10 Questions

Array Data Structures

15 Questions

String Data Structures

15 Questions

Searching Algorithms

15 Questions

Sorting Algorithms

15 Questions

HashMap, HashSet & HashTable

10 Questions

Stack & Queue

15 Questions

10 Questions

Tree Data Structure

10 Questions

Q1. What is Self Paced course offered by ScholarHat?

Online Self Paced Courses are designed for self-directed training, allowing participants to begin at their convenience with structured training and review exercises to reinforce learning. You'll learn through videos, PPTs, and Assignments designed to enhance learning outcomes, all at times that are most convenient for you.

All our mentors are highly qualified and experience professionals. All have at least 8-10 yrs of development experience in various technologies and are trained by Dot Net Tricks to deliver interactive training to the participants.

As soon as you enroll in the course, you will get access to the course content through LMS (The Learning Management System) in the form of a complete set of Videos, PPTs, PDFs, and Assignments. You can start learning right away.

Q4. How do I enroll for the course?

You can enroll in the course by doing payment. Payment can be made using any of the following options.

1. Visa debit/credit card
2. Net banking
3. Through PayPal

Q5. Student discounts?

Yes, Dot Net Tricks provides student discount to learners who cannot afford the fee. Email us from your student account, or attach your student ID.

Q6. Can I share my course with someone else?

In short, no. Check our licensing that you agree to by using Dot Net Tricks LMS. We track this stuff, any abuse of copyright is taken seriously. Thanks for your understanding on this one.

Q7. How do I setup my team?

Please drop us an email with a list of user details like name, email you’d like to enroll and have access, we'll create your team accounts.

Q8. Do you provide technology version upgrade session free?

Yes, we do. As the technology upgrades your content gets updated at no cost.

Q9. Whom do I contact, if I have more queries?

You can give us a CALL at +91 113 303 4100 OR email us at enquiry@dotnettricks.com

Q10. Do you offer certificates of completion?

We do. Once you've finished a course, reach out to us.

Still have some questions? Let's discuss.