Data Structures and Algorithms
1.1 Array Link to Work
- pascal Trianlge
- Set matrix zero
- next permutation
- Kadane Algorithm
- stock buy and sell
- Sort (0,1,2)
- Finding missing and duplicate number
- Count Inversion
- Search in 2D Matrix
- Good Random Question Link
1.2 Trees Link to Work
- Inorder Morris Traversal
- PreOrder Morris Traversal
- Left View of Binary tree
- Right View of Binary tree
- Top View of Binary tree
- Down View of Binary tree
- Vertical Order Traversal
- Pre Post and in order in one traversal
- Find all path from node to leaf
- Diameter of Binary Tree
- LCA of Binary Tree
- Zig Zag Traversal
- Max Path Sum of BT
- Build BST from Preorder and Inorder
- Delete node in BST
- Flatter Binary tree into right Skewed tree(LL)
- Populate next pointer with right Pointer
- Construct bst from sorted order
- Check BST for validity
- Kth largest in BST
- Width of BST
- LCA Of BST
- Find inorder predecessor or successor in BST
- Convert BT to LL with specific condition
- Build BST From Array
- Build BST from Preorder
1.3 Graphs Link To Work
- Graph Traversal
- Breadth-First Search (BFS)
- Depth-First Search (DFS)
- Shortest Path Algorithms
- Dijkstra's Algorithm
- Bellman-Ford Algorithm
- Floyds Warshall
- Minimum Spanning Tree
- Disjoint Set
- Kruskal's Algorithm
- Prim's Algorithm
- Topological Sorting
- Using Stack
- Kahn's algo(BFS)
- Cycle Detection
- In undirected Graph
- In Directed Graph
- Random Question
- Nearest 0 matrix
- Rotten Mango
- Bipartied Graph
- Clone a graph
- Account MergeSubset sum problem
1.4 Dynamic Programming (DP) Link to work
- Minimize cost for climbing stairs(K jumps)
- House Robber
- Unique Path to reach robot to end of matrix
- Subset sum problem
- Perfect sum problem
- max product sub array
- longest increasing subsequence
- 0/1 kanpsack
- coin change
- edit distance
- Job scheduler
- longest increasing subsequence
- longest increasing sequence
- Find max sqaure are in 2 d matrix
1.5 Linked Lists Link to work
- Reverse Doubly Linked List
- Reverse Linked list
- Middle Linked list
- Detect a cycle in Linked List
- Detect a starting point in cycle
- Palindrome in Linked List
- Add 1 to linked list
- Find all pair with given target in sorted doubly linked list
- Get intersection point of two LL
- Flatten of linked list
- Rotate a linked list by k
- Flatten a linked List
- Sort Linked List
- Reverse linked list by k group
2.1 Javascript Link to Work
- Execution Context
- Shortest JS Program
- Defined vs not Defined
- ==, ===, Object.is()
- Scope Chain Lexical Environment
- Temporal Dead Zone
- Block Scope and Shadowing
- Closures
- Functions
- Call Apply Bind
- Pollyfills
- Asynchronous JS, EVent Loop
- HOF
- JS Engine
- Event Listner
- Error Handling
- CallBack and CallBack Hell
- Promises
- Async Differ
- Async Await
- Map Filter Reduce
- Cookies And Storage
- Prototype Inheritance
- Debouncing
- Throttling
- Iterators and Generators
2.2 Frontend Extra Topic Part 1 Link to work
- Server Side Rendering
- Client Side Rendering
- Lazy loading
- Workers
- Caching
- Techniques to reduce dom manupulation and improve network performance
2.3 Frontend Extra Topic part 2 Link to work
- A/B Testing
- MVC
- Web Socket
- Observer Pattern
- Map Filter Reduce Implementation Link
- Prmoises Implmentation Link
- Adding Event Listener in Array using Prototype Link
- Implementing Event Dispatcher Link
- Tab Problem Link
3.1 MultiThreading in Java Link
- JVM JDK JRE
- Thread and Process
- MultiThreading and Synchronization
- Producer and Consumer Problem
- Deadlock
3.2 More About Java Link
- basic of testing
- Annotation introduction
- String interning
- Volatile
- Transient
- Abstract and Interface
- Final Keyword
- Access Modifier
- Streams
- Wrappers
- Generics
- Lambda Expression
- Functional Interface
4.1 Mutithreading in c++ link
- Thread
- join,detach
- mutex
- lock, unlock
- timed_mutex
- recursive_mutex
- condition variable- wait, notify
- sleep
- producer consumer
- thread pool
- type of ways to create thread
- Cap Theorem Link
- Random Question to practice Link