0% found this document useful (0 votes)
28 views8 pages

Java Plus DSASheet

The document is a comprehensive guide on Java programming and Data Structures and Algorithms (DSA) by Shashwat Tiwari, covering various topics including Java basics, mathematics in DSA, bit manipulation, arrays, searching algorithms, sorting algorithms, string manipulation, stacks, queues, object-oriented programming, and collections framework. Each topic is accompanied by detailed subtopics and video links for further learning. It serves as a structured resource for learners to enhance their programming skills and understanding of data structures.

Uploaded by

sandeeppatr143
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views8 pages

Java Plus DSASheet

The document is a comprehensive guide on Java programming and Data Structures and Algorithms (DSA) by Shashwat Tiwari, covering various topics including Java basics, mathematics in DSA, bit manipulation, arrays, searching algorithms, sorting algorithms, string manipulation, stacks, queues, object-oriented programming, and collections framework. Each topic is accompanied by detailed subtopics and video links for further learning. It serves as a structured resource for learners to enhance their programming skills and understanding of data structures.

Uploaded by

sandeeppatr143
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Java Plus DSA Sheet By Shashwat Tiwari

Main Topics Subtopics Details Video Links


Java Basics Programming Language and Memory Management https://youtu.be/DEC268j2hk0
What is a programming Language
Machine Language
Assembly Language
High Level Language
Procedural Language
Functional Language
Object Oriented Language
Scripting Language
Stack Memory
Heap Memory
Garbage Collection
Flow of a program https://youtu.be/wL6sbJOzF5A
Flowchart
Psuedocode
Algorithm
How Java Program Compiles https://youtu.be/2Uer9X75EPI
Byte code
Machine code
why java is platform independent
JDK, JRE, JVM, JIT
Writing your first program https://youtu.be/1Z2QzcbLicY
installation of Java
installation of IDE
"Hello Coder"
entrypoint of program
commandline arguments
generating byte code in style
How computer runs your program?
writing comments in java
Java being Java https://youtu.be/FVs7Z9RfIJE
Variables and constants
Literals and keywords
data types
Program to swap two numbers
Type casting Implicit and explicit
Automatic type promotion
Wrapper class
ASCII Values
Unicode style
Inputs and Operators https://youtu.be/NZF0Rwrubs0
Operators in java
How to take input
Organize your code https://youtu.be/Axw8usR3rEA
Java Packages
Access Specifiers
Control Statements https://youtu.be/N6unLhAxy8s
if-else
switch case
while loop
do-while Loop
for each loop
Functions in Java https://youtu.be/IkOkAzNuefc
Functions
Types of functions
create your own functions
call by value and call by reference

Mini Project -1 https://youtu.be/FM1ujSiOSi0


Calculator Application
Temperature convertor

Maths in DSA Mathematics in DSA - Part 1 https://youtu.be/q0kKRFpGmiE


Number system
Conversion from one system to other
Digit extraction
Reverse a Number.
Find even odd
Find Power of a number.
Fast exponentiation

Mathematics in DSA - Part 2 https://youtu.be/bvmoEgSp9O4


count digits
count digits using log
using log formulas
Armstrong Number
Pallindrome Number
Print all divisors
Check if Number is Prime
Sieve Algorithm
Newton Raphson Algorithm for square root
Greatest Common Divisor
Euclidian GCD Algorithm
lcm of two numbers
Modular Arithmetics
fast exponentiation with modular arithmetics
factorial of a number
find trailing zeros in a factorial
ceiling and floor of a number

Bits Manipulation Bits and Binary Operations https://youtu.be/cn_KKSd3T2g


Least Significant Bits
Most Significant Bits
Signed and unsigned Numbers
Calculate range of data type
How to add binary numbers
How to find 1's complement
How to find 2's complement
Left shift and Right shift
Trick to divide or multiply any number.
Bitwise NOT, Bitwise AND, Bitwise OR

Play with Bits / Bit Manipulation https://youtu.be/wGrEXbLQX1k


Find the i-th Bit
Set the i-th Bit
Toggle the i-th Bit
Unset the i-th Bit
Print the number in binary without conversion
Find if a number is even / odd using bit manipulation
Find if a number is power of 2.
Count the number of set bits.
Unset the right most set bit.

Bit Manipulation https://youtu.be/UTVvLfkuSEs


Bitwise Operators
Bit Manipulation
Bit Masking
Advanced XoR problems of Bit Manipulation

Arrays Arrays in Java https://youtu.be/TsoTexsJWlI


what are arrays
concept of indexing
Insert, update, delete, traverse
How arrays work in memory
what is a sorted array
How to create a 2d array
Operations on functions
Jagged Array
passing arrays to functions

Searching Algorithms Searching Algorithms - 1 https://youtu.be/slqFdKVMjeQ


Linear Search
Q. search an Element / first occurrence
Q. Find the minimum element in an array (1D/2D)
Q. Find the maximum element in an array (1D/2D)
Q. Find max sum 1D array in a 2D array
Q. Search all occurrences (1D/2D)
Q. Search last occurrence (1D/2D)

Searching Algorithms - 2 https://youtu.be/kOIECDEUzaI


Binary Search
Sorted in increasing
Sorted in decreasing
Order Agnostic Binary Search
Questions on Binary Search Part 1 https://youtu.be/P-vl_BrdxJA
Q1. Ceiling of a Number
Q2. Floor of a Number
Q3. First and Last Position of element in sorted array
Q4. Count all occurrence of element in an array
Q5. Next smallest letter in sorted array
Questions on Binary Search Part 2 https://youtu.be/DoVawmdh5NM
Binary Search in range
Q6. Find Minimum Difference in a Sorted array.
Q7. Find an element in an array of Infinite size
Q8. Find first 1 in an infinite and sorted array of 0s and 1s
Questions on Binary Search Part 3 https://youtu.be/IK5eSvNw9Qw
Bitonic Array
Q9. Find pivot in bitonic array
Q10. search in bitonic array
Questions on Binary Search Part 4 https://youtu.be/n12QcCu8oBI
Sorted and Rotated Array (Clockwise and Anticlockwise)
Q11. count number of rotations
Q12. search in rotated sorted array ( with and without duplicates)
Q13 Find min / max (peak) element in rotated and sorted array
Questions on Binary Search Part 5 https://youtu.be/_4LmUWmmYbY
Q14. Allocated minimum number of pages
Q15. Capacity to Ship within D Days

Q16. Koko Eating bananas https://youtu.be/BUFHoQIOnAs


Q17. Smallest Divisor given a threshold https://youtu.be/pSGtbhpuhbk
Q18. Minimize Maximum of products distributed to any store https://youtu.be/4O6wrTtUQvY
Q19. Aggressive cows https://youtu.be/86xSPxfc4iQ
Q20. Median of two sorted arrays https://youtu.be/2BOgAlmyTkc
Q21. Kth element of two sorted arrays https://youtu.be/SB6j8D95eHM

Questions on Binary Search Part 6 https://youtu.be/f09DayNeigg


Q22. Single Element in a Sorted Array
Q23. Finding square root
Q24. Count Squares
Other Searching Algorithms https://youtu.be/rFwBm-VT99A
Jump Search
Interpolation Search
Exponential Search
Ternary Search

Q. Median of a Sorted Matrix https://youtu.be/aNIfGl1ZKQE


Q. Kth Smallest element of a Matrix https://youtu.be/HuOcDlB1uXk

Matrix Questions on Matrix - 1 https://youtu.be/EXcmeMx3Dq0


Q. Search in a row wise and column wise sorted Matrix
Q. Search in a sorted matrix

Questions on Matrix - 2 https://youtu.be/hA_yvtCpjsg


Q. Transpose a Matrix
Q. Rotate a Matrix by 90 degree clockwise
Q. Rotate a Matrix by 90 degree anticlockwise

Questions on Matrix - 3 https://youtu.be/uAaoWcYX2_8


Q. Spiral Matrix - 1
Q. Spiral Matrix - 2
Time & Space Complexity Time and Space Complexity https://youtu.be/ZltvAvQXIEo
What is Algorithm Complexity
Asymptotic Notations
Time Complexity
Space Complexity
Big Oh cheat sheet.
How to calculate time complexity
Algorithm optimizations

Sorting Algorithms Insertion Sort https://youtu.be/EHBeiIm59Yk


Selection Sort [Uni and Bi - directional] https://youtu.be/CfEZKDoVRcw
Bubble Sort and Brick Sort https://youtu.be/vXwKKzn6D4E
Counting Sort https://youtu.be/e644HVGFAJY
Radix Sort https://youtu.be/HuwgdPVEwCc
Pigeonhole Sort https://youtu.be/sWX1eMPYzSU
Cyclic Sort https://youtu.be/vJn71L7CPH4
Q. Find missing element in range of 0 to N https://youtu.be/bIHpx5NN2bg
Q. Given an array [1 to N] return all elements in range [1 to N] that are absent in the array https://youtu.be/xxFebE0VznM
Questions on Duplicate Numbers https://youtu.be/Us63C10ozzw
Q. Find the duplicate Number in an array [1 to N] ( inclusive )
Q. Given an array [1 to N] with elements appearing once or twice, return all elements that appear twice
Q. Find the missing and repeating element in an array [1 to N] TBD
Q. Return the smallest positive number missing TBD

String Manipulation Strings in Java https://youtu.be/aqjGYjtczvY


characters
string literals
string constant pool
subsequences
substrings
String comparison
String with new operator
Reference Comparision

More on Strings https://youtu.be/rXSUJ-PwU4g


String Builder
String Buffer
Next vs NextLine
Taking string as a user input
compareTo function
trim function
split function
startsWith function
endsWith function
IndexOf function
lastIndexOf function
charAt function
toLowerCase function
toUpperCase function
toCharArray function

Playing with String https://youtu.be/SrPyIYakYt8


Input Buffer and delimeters
String formatting
String Concatination

Q. Print all substrings https://youtu.be/I1rgYRi1tXE


Q. Reverse a string https://youtu.be/m9QAjIVnmp4
Q. Check if a string is pallindrome https://youtu.be/-HGtMO4MkWs
Q. Reverse words in a String https://youtu.be/KhNAMB3jDOU
Q. Check if two strings are anagram https://youtu.be/SFF3ND7TPc0
Q. Reverse Words in a String -iii https://youtu.be/ajhV7EYLfOY

Stack Stack Data Structure https://youtu.be/TpuQWpma7ug


Stack
Stack using Arrays
Q. Check parenthesis https://youtu.be/CNOoP25NpfQ
Q. Remove minimum brackets to balance string https://youtu.be/FB6wSdPjVGw
Q. Add minimum brackets to balance string https://youtu.be/BNFBv1KtcDM
Q. Swap minimum brackets to balance string https://youtu.be/RZTapGf3pzI
Q. Swap adjacent brackets to balance string https://youtu.be/U48xDsqb8OE
Q. Asteroid Collision https://youtu.be/OtddlksWtS4
Q. Stock Span Problem https://youtu.be/1_Bbq5qOraY
Q. Next Greater element https://youtu.be/8P3e34EgVyY
Q. Next Smaller element https://youtu.be/MqQchOMmTGY
Q. Next Greater / Smaller element in circular array https://youtu.be/ahlaBL4gG1s
Q. Largest Rectangle in Histogram + Previous smaller element https://youtu.be/qUS-DZU4fj4
Q. Max Rectangle https://youtu.be/DPkDmhCyyuc
Q. Longest Valid Parentheses https://youtu.be/gqQsbdTcey0

Queue Queue Data Structure https://youtu.be/9m4SZPRQXQI?si=izPej7j2qhbiKrys


Queue
Queue using Array
Circular Queue
Double ended Queue
Implement queue using stack https://youtu.be/Enygu8ivr0w?si=SgzjEHke5oc_cwdk
Implement stack using queue https://youtu.be/z4FxPUgXn90?si=86tva8iOIGV5E74n
Q. LRU Cache TBL
Q. LFU Cache TBL
Q. Rotten Oranges TBL
Q. Sliding Window Maximum TBL
Q. Find Maximum and Minimum of Every Window Size TBL

Object Oriented Programming Classes and Objects https://youtu.be/yGT6-P3XGrg?si=A8C7Bhnk9Jw9_3Eo


Pillars of Oops https://youtu.be/G5djyUY_LKc?si=3pWEptBtHSDmXZdw
Inheritance https://youtu.be/5_pMrxQ17rY?si=3KP2Dq9CFLHYbF4r
Important Keywords https://youtu.be/txtsaKx3eME?si=F5RFc62AkV6TCvKW
Constructor Calling and Access Specifier https://youtu.be/7VLroC57Exk?si=Gojo6PdpxLRQEk46
Getters and Setters https://youtu.be/W1P7tvRWZvs?si=_VVQEdr-AJFUvFUi
Function Overriding https://youtu.be/_Xog65pQgDk?si=WpwfA8BgXA5urOgL
Abstract Classes https://youtu.be/MrK_eL96fnY?si=7HCmcqIDdDFCJzUp
Java Interfaces https://youtu.be/a2QGa30h3Is?si=Fo2_E2upIdm_6YRe
Nested Classes https://youtu.be/rjWDZt7hbD8?si=rRLug4uAy0i81Tbt
Java Generics https://youtu.be/vGG9d_FEl60?si=IfDlHPpCONjSEbod
Comparator and Comparable https://youtu.be/quegYlReztM?si=ywgPQvHFaTwPKrFC

Collections Framework Collections in One Shot Introduction https://youtu.be/CRG9tcCr8iU


Need of Data Structure and Algorithms
Data and Object in real world
Need for a framework
What is collection framework?
Modules Vs Framework Vs Library Vs Package
How to Import Collections Framework
Hierarchy of Collections Framework - Interfaces & Classes
Functions in Collection Interface
Java Generics and AutoBoxing
List Interface
ArrayList & its functions
How to Iterate your List using Iterator
Internal Working of ArrayList
Sorting using Comparator
Sorting based on Custom Comparator
How to Iterate your List using ListIterator
Time Complexity of ArrayList
LinkedList & its functions
ArrayList VS LinkedList
Time Complexity of LinkedList
Vectors and their use
Stack & its functions
Time Complexity of Stack
Queue & its functions
Queue using LinkedList
Queue using ArrayDeque
Deque Interface using ArrayDeque & LinkedList
PriorityQueue Implementation of Queue
Map Interface
Hashing Concept
How Map uses Hashing Concept
HashMap & its functions
How to traverse a Map using Entry Interface
Map using LinkedHashMap
Map using TreeMap
BST
Self Balanced BST or Red-Black Tree
TreeMap & its functions
Set Interface
HashSet
How HashSet works Internally
LinkedHashSet
TreeSet

Two Pointers Q. Container with Most Water TBD


Q. Trapping Rainwater TBD
Q. Find Pair with a given sum in sorted Array TBD
Q. Remove Duplicates from Sorted Array TBD
Q. Maximum Consecutive ones TBD
Q. Reverse Pairs TBD
Q. The Celebrity Problem TBD

Recursion Recursion - I playing with function calls


Types of recursion
Q. convert decimal to binary
Q. reverse a number / string
Q. reverse an array inplace
Q. reverse a stack

Recursion - II Leap of Faith


Q. Tower of Hanoi
Q. Count ways in a Matrix

Time and Space Complexity Analysis Notations


Recurrence Relation
Trick

Backtracking and All it's variants Q. Rat in a Maze


Q. All permutations
Q. Pallindrome Partitioning
Q. Letter Combination of a Phone Number
Q. Print Subdequences of a String
Q. Subsequences with sum equal K

Backtracking with Pruning Q. Combination Sum - I


Q. Combination Sum - II
Q. Combination Sum - III
Q. Combination Sum - IV

More Questions on Backtracking Q. Number of islands


Q. Knights tour problem
Q. N Queens problem
Q. Suduko Solver

Q. Josephus problem - Kill in circle


Recursion - III Binary Search using recursion

Divide and Conquer Q. calculating power ( x^n)


Q. Merge Sort
Q. Quick Sort
Q. Count Inversion
Strassen's Matrix Multiplication

Linked List Linked List Data Structure https://youtu.be/cf4RNGYI6hk?si=aY6v4j2CUzgaPlpm


Intro to linked list Data Structure
Types of linked list
All operations of Single linked list
Time Complexity
Applications of linked list
Implementation of linked list data structure

Doubly Linked List https://youtu.be/JxIC0XeTl4Y?si=5HZNJ_-u8IqktXam


Intro to Doubly linked list
All operations and their time complexity
Implementation of linked list

Q. Find Middle of Linked List (Hare Tortoise Algorithm) https://youtu.be/NUbqd8-lHl4?si=gByqGlulWwtiPV__


Q. Delete Middle of Linked list https://youtu.be/uLlJJHpq7hw?si=Fm2c_sOMqUx5QPqP
Q. Pairwise swap nodes of Linked List https://youtu.be/92f3L2p31Oc?si=oyC441Kt3bph4ZCZ
Q. Add two numbers using Linked List https://youtu.be/OgSnJa9pDk0?si=fRMC6sMYZcrkZr07
Q. Reverse the linked list (Iterative + Recursive) https://youtu.be/6GkwvqS9Cq4?si=gGSvqdH_iCcI3a_K
Q. Palindrome linked list https://youtu.be/uXB8S875uyw?si=JVxHNQHRKatVgKPy
Q. Detect Cycle in a linked list https://youtu.be/6VRgzaOT2G0?si=Tx8_Z5poHSB09yyd
Q. Segregate a linked list into odd and even list https://youtu.be/EqsLvheH5fA?si=-GLAb-yfSnpr3oFc
Q. Reverse Nodes in K Group https://youtu.be/zsuqutkRYcs?si=7bmdLeSN25CvQwve
Q. Remove Nth node from the end of linked list https://youtu.be/XLPiw_Dz5-A?si=_dkgHPvLVig4yrFR
Q. Sort a linked list of 0's, 1's and 2's https://youtu.be/c2C4lbstw1w?si=hG4blZtDKCcPpg5e
Q. Intersection of two Sorted linked list https://youtu.be/19unN7dz54A?si=KiqIImUyRioMkqhU
Q. Intersection point of two linked list https://youtu.be/qw0ZKmP-GTk?si=hLR5f5AShqMgMBdB
Q. Insert in a sorted list https://youtu.be/wa4fTaf3qSw?si=Iu6oK0TRh503HGk0
Q. Insertion Sort on Linked List https://youtu.be/fzx8CWqbxxI?si=LB1C44XQCKC9T9JU
Q. Merge Sort on Linked List https://youtu.be/13UkRumpqZw?si=uw-eXXBmA6YeHaFu
Q. Split a circular linked list into two circular lists https://youtu.be/dBxiAxuT2I8?si=utMWpF083dismeIJ
Q. Clone a linked list with random and next pointer TBL

String Manipulation Q. Longest Pallindrome TBD


Q. Find all Anagrams TBD
Q. K-Anagrams TBD
Q. Roman to Integer TBD
Q. First Repeated word in a string TBD
Q. Isomorphic String checker TBD

Rabin Karp Algorithm TBD


KMP Algorithm TBD
LPS Algorithm TBD

Hashing Hashing https://youtu.be/vB3WKXNH-v4?si=oAOjWmxgCLXQvjC2


Components of Hashing
How hashing works?
Types of Hash Functions
Collisions
Collision Resolution Techniques - Separate chaining
Collision Resolution Techniques - Open Addressing
Load Factor
Rehashing
Applications and Advantages

Hashmap Data Structure https://youtu.be/CMA0MQQ3jhA?si=qi9VRUEUv4Rldbv2


What is hashmap?
How to use custom key-value pair

Implement HashMap in Java https://youtu.be/B4VukYcQG_E?si=D4bP5zpwtOFPzNQM


All Methods
Hashcode function
Rehashing

Q. Most frequent element in an array https://youtu.be/O5iUfFHxCZc?si=wKCy3r5x7hgIDEib


Q. Check if an array is subset of another array https://youtu.be/V4hi-l-xNXU?si=LMEB14_uTicW-6vM
Q. Count Pairs with given sum https://youtu.be/NC9r8D2QnHk?si=nWVnSK7h3P9V8k7u

Hashset Data Structure https://youtu.be/3euKVlloIWY?si=Uvz3qkcdHLlIsnbX


what is hashset data structure
Usage of map keys
Set Iterator

Q. Minimum number of subsets with distinct elements https://youtu.be/h6jzp9waCyk?si=GTlG-0HGVxzwzuvK


Questions on K-SUM Subarray Pattern https://youtu.be/S6tARGbBGEo?si=7wRtd-jYnSdHRYmk
Q. Check if subarray with K sum Exists or Not
Q. Find the starting and ending index of K sum subarray
Q. Find the maximum length subarray with K sum
Q. Find the minimum length subarray with K sum Homework
Q. Count the total subarrays with sum K
Q. Find largest subarray with 0 sum Homework

Q. Longest subarray with sum divisible by K https://youtu.be/L03d0qThnJQ?si=1TEHDMBGaDGVeElr


Q. Longest increasing concecutive subsequence https://youtu.be/4ohND5Hq-wQ?si=-Rdz-tpJZ4W1ke-g
Q. Count distinct elements in every window of size K TBD
Q. Largest subarray with equal number of 0s and 1s https://youtu.be/qOCuB-IC9KA?si=NEEgvm_zlI-dvSm_
Q. Find pairs with given sum such that elements of pair are in different rows TBD
Bucket Sort Algorithm https://youtu.be/5Pe3YSnqGh8?si=8cnivpNvhCX6X0hf

Sliding Window Sliding Window Technique https://youtu.be/DQMxp7TS2BI?si=WN_ksJt1fWPXuLmF


Q. Maximum Sum Subarray of Size K https://youtu.be/rGl2Z6fuAas?si=t3JH4diL-nDnBwGe
Q. First Negative Number in Each Subarray of Size K https://youtu.be/Rot0y4cmlNw?si=TAp7sbW1OOQkW57C
Q. Chocolate Distribution Problem https://youtu.be/oYNU1TD9W5Y?si=1rn_BjF9-LIJDwcH
Q. Smallest subarray with sum greater than x https://youtu.be/UXValb-h70s?si=VaCxJsB7-WKbL4nW
Q. Longest Substring with K unique Elements https://youtu.be/Yp3T06_27MY?si=GUuisgzt8fXO5gF6
Q. Longest Substring without repeating elements https://youtu.be/Vgo7tvBm8OU?si=fxI1Ggsz3C_sMlIj
Q. Count Occurances of Anagrams https://youtu.be/PVXVsSkItpY?si=0zBiqLK0x9yzN85K
Q. Minimum Window Substring https://youtu.be/26E3K8Njm7M
Q. Sliding Window Maximum https://youtu.be/jOoZuTrfpjc

Trees Linear and Non Linear Data Structures https://youtu.be/jeQ_B7-nihM


Linear Data Structure
Non Linear Data Structure

Intro to Tree Data Structure https://youtu.be/qfHkWUl1zlc?si=Z1PWfLJg3e8wL6GC


What is a tree Data Structure.
Types of trees.
Binary Trees.
N-ary Trees.
Ternary Trees.
Non Linear Data Strcuture.
Hierarical Data Structure.
Properties of a Tree Data Structure.
Neighbour in Tree.
Siblings in Tree.
Cousin in Tree.
Depth of a Tree.
1Height of a Tree.
Child of a node in tree.
Parent of a node in tree.

Tree Traversal BFS https://youtu.be/4NZV0XBbKfA?si=wn_pcNP-l7dmDcXA


BFS on N-Ary Trees https://youtu.be/4NZV0XBbKfA?si=wn_pcNP-l7dmDcXA
Tree Traversal DFS - Recursive https://youtu.be/aQKJ9juD87k?si=Gou7Ob0zLS2xOoU2
Preorder Iterative https://youtu.be/Tp2kzBIunWk?si=LYmDgBNvOFJogvt1
Inorder Iterative https://youtu.be/-VzRxq3Jwp4?si=8XJFCAnFCXWss35l
Postorder Iterative https://youtu.be/xEPe6aWlRd0?si=rRWVNq5RgT8w9Z6e
Q. Construct tree using inorder and postorder. https://youtu.be/uDuOuMcSHwo?si=8bymVQfdrdovJImK
Q. Maximum Depth of Binary Tree https://youtu.be/zbZEcUV0t7k?si=iyca3V-SbEKcEthY
Q. Maximum Depth of N-Ary Tree https://youtu.be/Mehu7yep3ag?si=jVmAzUOxVZRD-JYV
Q. Diameter of Binary Tree Q. Size of Binary Tree https://youtu.be/Dt-U4vzYDTM?si=NdWKcECHM7PslySR
Q. Diameter of N-ary Tree https://youtu.be/mPTJyH6Qs4c?si=vBK8aPbfmdQjYs8f
Q. Count number of node in compete Binary Tree https://youtu.be/1m3F7zEW9qc?si=YI6cXSo8StZmYUAY
Q. Left and Right View of Binary Tree https://youtu.be/JgRsVsw_ZSw
Q. Top and Bottom View of Binary Tree https://youtu.be/zbA4yWuEoYE
Q. Vertical Order Traversal of Binary Tree https://youtu.be/X-XLc_jOmHE
Q. Boundary Traversal of Binary Tree https://youtu.be/c2uD7WBjE5A
Q. ZigZag Level Order Traversal of Binary Tree https://youtu.be/9VLBM60-AVs
Q. Balanced Binary Tree https://youtu.be/PPD2X52uzMc
Q. Lowest Common Ancestor of Binary Tree (LCA) https://youtu.be/m9NKcTvrhSc
Introduction to Binary Search Tree https://youtu.be/WikD4AEvRq0
Delete a Node in BST https://youtu.be/kdXBGjmiVCE
Q. Validate BST https://youtu.be/GcY4pTdHzq0
Q. Two Sum in BST https://youtu.be/9luczLx9YYc
Q. Kth Smallest Element in BST https://youtu.be/RM8k2pr6V38
Q. LCA in BST https://youtu.be/TytL24jNZ6k
Q. Burn a Tree TBD
Q. BT to DLL TBD
Q. Floor and Ceil in BST TBD
Q. Search in BST TBD
Q. Binary Search Tree Iterator https://youtu.be/V9J9gGIVt_E
Q. Maximum Sum BST in Binary Tree https://youtu.be/zAz-WbqIaf8

Flood fill algorithm in BT TBD


Segment tree TBD
Range query TBD
Red Black Tree TBD

AVL Tree https://youtu.be/QEvpN09q3nw


1. AVL Trees
2. Balanced Trees
3. Insert in AVL Tree
4. Delete in AVL Tree
5. Balance factor of AVL Tree
6. AVL Tree rotations
7. LL
8. RR
9. LR
10. RL

TreeMap Collections https://youtu.be/W0JgjIgz3zQ

Heap & Priority Queue Heap https://youtu.be/NFiYQGyL8rg


1. Heaps
2. Heapify
3. Heapsort
4. Min Heap
5. Max Heap
6. Increase Key
7. Decrease Key
8. Insert in Heap
9. Delete from Heap
10. build heap from array
11. Complete Tree

Priority Queue in one shot https://youtu.be/XGfa9jnDJNY


1. Priority Queue in Java collections
2. Priority Queue on custom classes.
3. Collections.ReverseOrder()
4. dsa playlist
5. Equate objects in pq

Q. Top K Frequent Elements https://youtu.be/bXbiLwGSZHU


Q. Sort Characters by frequency https://youtu.be/zPB7j1TMTDM
Q. IPO https://youtu.be/sdCvHi2i03E
Q. Design Twitter https://youtu.be/tH051S6aM5M
Q. Task Scheduler https://youtu.be/it-tqUPacgM
Q. Connect N ropes with Minimum cost TBD
Q. Medium of Running Streams of Integers TBD
Q. Maximum Sum Combination TBD
Q. Merge K sorted Elements TBD

Tries Trie Introduction to Trie


Implement a Trie in java
Insert, Search and delete operations

Questions on TRIE Q. Longest String with All prefixes


Q. Number of Distinct substrings in string
Q. Power Set
Q. Maximum XoR of two Numbers in an Array

Graphs Graph Introduction https://youtu.be/f-buby0Aac8


1. Introduction to graphs
2. Directed Graph
3. UnDirected Graph
4. Weighted Graph
5. UnWeighted Graph
6. Vertex and Edges
7. Degree of a node in graph
8. In-degree and Out-degree in graphs

Graph Representation & Application https://youtu.be/2oXUetonhUg


1. How to represent graph in memory
2. InDegree of directed graph
3. outDegree of directed graph
4. Adjacency List
5. Adjacency Matrix
6. Degree of a graph
7. Represent Directed graph with weight
8. Represent UnDirected graph with weight

Q. Find the center of star graph https://youtu.be/bEzD_V6Uhss


Q. Maximum Total Importance of Roads https://youtu.be/C7BENkkO3oU

Connected Components and Path https://youtu.be/bmULgrjRcss


1. How to traverse multiple components in a graph
2. TreeTraversal vs Graph Traversal
3. Path in a graph
4. Cycle in a graph
5. Directed Acyclic Graph (DAG)
7. Find if a path is valid or not
DFS Traversal in Graph https://youtu.be/8ZP_Y3boL0M
BFS Traversal in Graph https://youtu.be/88WZluVGlFI
Q. Flood fill using BFS https://youtu.be/W6nOvvWzZYg
Q. Number of Islands https://youtu.be/mwsuv-S1biw
Q. Word Ladder -1 https://youtu.be/zjR2WGbBA2k
Q. Word Ladder -2 https://youtu.be/KsNOBLyImbY
Q. Evaluate Division https://youtu.be/i0lqeMRuI5k
Q. Get Watched Videos by your friends https://youtu.be/dCTAWkkO4h4
Q. Rotting Oranges | Multisource BFS https://youtu.be/PULSUj4gBBc
Q. Minimum Time to Collect All Apples in a Tree https://youtu.be/ROI1bS_uBSE
Q. Most Stones Removed with Same Row or Column https://youtu.be/SjdbuY-Ryuk
Q. Accounts Merge https://youtu.be/kmzlMoxmCs4
cycle detection in undirected graph using BFS https://youtu.be/gvNeSmWatIc
cycle detection in undirected graph using DFS https://youtu.be/erRL82Gl2Xg
Cycle Detection In Directed Graphs using DFS https://youtu.be/Y3eIsQj-DpI
Kahn's Algorithm for Toposort https://youtu.be/tZjVTTABXV0
Toposort using DFS https://youtu.be/syzUtO95I8g
Cycle Detection in directed graph using toposort https://youtu.be/3PMWe72jF_8
When to apply BFS | Shortest Path using BFS https://youtu.be/vNHDWm_aVgA
Dijkstra Algorithm | Shortest Path https://youtu.be/jhlo_YQPXR0
Floyd Warshall Algorithm | Shortest Path https://youtu.be/7y88NO1Aq1o
Bellmanford Algorithm | Shortest Path https://youtu.be/Kbfgo3E3n6c
Q. Network Delay Time https://youtu.be/n551TcPWSH8
Q. Cheapest Flights Within K Stops https://youtu.be/NIrYezLg_6Q
Q. Minimum Cost to Convert String I https://youtu.be/jmqnpjtVPNs
Disjoint Sets in one shot https://youtu.be/7wgUuv0U5zs
Q. Redundant Connection https://youtu.be/jrLOReWZSes
Q. Satisfiability of Equality Equations https://youtu.be/87bMglHvC8A
Q. Number of Operations to Make Network Connected https://youtu.be/Gn6ZlaLIDjY
Q. Is Graph Bipartite? https://youtu.be/7nETmZcQRko
Strongly Connected Components | Kosaraju's Algorithm TBD
Minimum spanning tree https://youtu.be/XozGcnGHJXM
Prim's Algorithm for minimum spanning tree https://youtu.be/4EuFmlbcSY8
Kruskal's Algorithm for minimum spanning tree https://youtu.be/dBGYpKLY2bQ

Greedy Algorithms Greedy Algorithm Introduction TBD


Q. Activity Selection Problem TBD
Q. Eqyption Fraction TBD
Q. Job Sequencing Problem TBD
Q. Policemen Catches Thieves TBD
Q. Assign mice to Holes TBD
Q. Minimum swaps for bracket balancing TBD
Q. Minimum number of Platforms for Railway station TBD
Q. Minimum number of Coins - greedy TBD
Q. Fractional Knapsack - greedy TBD
Q. Text Justification TBD

Dynamic Programming (DP) Dynamic Programming Introduction TBD


Overlapping Subproblems
Optimal Substructures
Q. Coin Change Problem TBD
Q. 0-1 Knapsack Problem TBD
Q. Longest Increasing Subsequence TBD
Q. Pallindromic Partitioning TBD

Kadanes Algorithm TBD


Q. Maximum Sum Subarray TBD
Q. Maximum Product Subarray TBD
Q. Maximum Sum Rectangle TBD
Q. Edit Distance TBD
Q. Rod Cutting Problem TBD
Q. Word Break Problem TBD

Q. Longest Common Subsequence TBD


Q. Variants of LCS TBD

Multi Threading Java Multithreading and Concurrancy - I TBD

Java Multithreading and Concurrancy - II TBD

Bonus Catalan Number TBD


Permutation and combinations
Trending leetcode contest questions.
All Important pattern printing
Observation and tricks

You might also like