Pre-Placements Checklist
Data Structures:
1. Array
a. Kadane's Algorithm
[Link]
b. N/2, N/3 greatest Number
[Link]
[Link]
[Link]
all-the-elements-that-appear-more-than-nk-times/
c. Merge overlapping intervals
[Link]
d. Rotate matrix
[Link]
e. Buy / Sell stocks - I, II, III: [Link]
to-buy-and-sell-stock/
2. String
a. Pattern matching algorithms (KMP + Rabin Karp)
[Link]
searching/
[Link]
searching/
b. Using StringBuilder class -> Add, Multiply Strings
[Link]
examples/
[Link]
java-with-examples/
c. String compression algorithm
[Link]
3. LinkedList
a. Implementation of Linkedlist
[Link]
using-class/
[Link]
b. Detect cycle in a linkedlist - Floyd Algo
[Link]
c. Reverse a linked list + reverse in groups
[Link]
[Link]
4. Stack
a. Implementation of Stack
[Link]
program/
[Link]
b. Balance parenthesis
[Link]
c. Trapping rain water
[Link]
d. Implement min stack
[Link]
5. Queue
a. Implementation of Queue + Deque
[Link]
array-implementation/
[Link]
[Link]
circular-array/
[Link]
b. Sliding window maximum
[Link]
c. Implement BFS
[Link]
graph/
d. Implement Level order in Binary tree
[Link]
6. PriorityQueue or Heap
a. Implementation of Heap Data structure
[Link]
b. Connect n ropes with min cost:
[Link]
c. Median of running stream: [Link]
of-stream-of-running-integers-using-stl/
d. LRU and LFU cache
[Link]
[Link]
7. Set & Map
a. Internal working of HashMap
[Link]
b. 4-sum
[Link]
c. Longest substring without repeat:
[Link]
repeat/
8. Binary Tree
a. Implementation: insert, delete, traverse: [Link]
G7FAow
b. Print top view, left view, right view, bottom view, level order, zig-
zag traversal of Binary tree
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]
traversal/
c. Invert a binary tree: [Link]
tree/
d. Lowest common ancestor
[Link]
binary-tree/
9. Binary Search Tree
a. Implementation
[Link]
and-insertion/
b. Check if a tree is BST or not
[Link]
tree-is-bst-or-not/
c. AVL tree and rotation
[Link]
[Link]
10. Graph
a. Implementation, BFS and DFS traversals
[Link]
[Link]
graph/
[Link]
graph/
b. Topological sorting
[Link]
c. Bellman ford Algorithm
[Link]
d. Dijkstra's Algorithm
[Link]
greedy-algo-7/
e. Prim's Algorithm
[Link]
mst-greedy-algo-5/
f. Kruskal's Algorithm
[Link]
algorithm-greedy-algo-2/
g. Unique Islands Problem: [Link]
number-of-distinct-islands-in-a-2d-matrix/
11. Trie
a. Implementation
[Link]
12. Segment Trees : More important in CP
a. Implementation
[Link]
data-structures/segment-trees/tutorial/
Algorithms:
1. Two pointers Algorithm
a. 3-Sum
[Link]
b. Container with most water
[Link]
c. Sort the array containing only 0, 1 and 2
[Link]
2. Math
a. Fast Power: [Link]
b. Euclid GCD: [Link]
basic-and-extended/
c. Sieve of Eratosthenes:
[Link]
3. Recursion + Backtracking
a. Sudoku solver
[Link]
b. N-Queens Problem
[Link]
c. Permutation and Combinations (Bruteforce)
[Link]
4. Bits Manipulation + Mathematics
a. Find one non-repeating number, find two
[Link]
[Link]
in-an-array-of-repeating-elements/
b. Count 1 bits in a number
[Link]
5. Divide & Conquer
a. Merge Sort
[Link]
b. Median of two sorted arrays
[Link]
6. Binary Searching
a. Find upper and lower bound using Binary search
[Link]
element-in-a-sorted-array/
b. Allocate books: [Link]
books/
7. Greedy Programming
a. Candy distribution:
[Link]
b. Gas station: [Link]
c. Fractional Knapsack
[Link]
8. Dynamic Programming
a. 0/1 Knapsack: [Link]
b. Longest increasing subsequence
[Link]
c. Matrix chain multiplication
[Link]
d. Coin change problem
[Link]
Operating System:
1. Basics of Threads
2. Process scheduling algorithms
3. Critical section Problem
4. Deadlock
5. Memory management
a. Paging
b. Segmentation
6. Page replacement algorithms
7. Disk scheduling algorithms
DBMS:
1. Types of Keys: Candidate, Super, Foriengn keys
2. Normal Forms
3. Joins
4. SQL queries
5. ACID properties
6. Indexing: B trees, B+ trees concepts
System design:
1. Low level design
a. Class, ER diagrams
b. OOPS concepts
c. Design Elevator system, Parking Lot, MakeMyTrip System
2. High level design
a. Scaling
b. Distributed systems
c. Microservice and Monolithic architecture
d. Load balancing
e. Message queue
f. Design Whatsapp, Tinder, Uber system