0% found this document useful (0 votes)
5 views

DSA_Short_Notes

Uploaded by

gunjananand237
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)
5 views

DSA_Short_Notes

Uploaded by

gunjananand237
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/ 2

Short Notes: Data Structures and Algorithms (DSA)

### 1. Arrays & Strings


- **Kadane's Algorithm**: Maximum subarray sum in O(n).
- **Sliding Window**: Longest substring without repeating characters.
- **Common Repeated Question**: Find the first repeating element in an array.

### 2. Linked List


- **Reverse a Linked List** (Iterative & Recursive).
- **Floyd's Cycle Detection Algorithm**: Detect and remove loop in O(n).
- **Common Repeated Question**: Find the middle element of a linked list in O(n).

### 3. Stacks & Queues


- **Next Greater Element**: Find the next greater element for each element in an array.
- **LRU Cache Implementation**: Least Recently Used Cache using Doubly Linked List.
- **Common Repeated Question**: Implement a stack using two queues.

### 4. Recursion & Backtracking


- **N-Queens Problem**: Place N queens on an NxN chessboard.
- **Subset Sum Problem**: Find all subsets of a set that sum to a given value.
- **Common Repeated Question**: Generate all permutations of a string.

### 5. Sorting & Searching


- **Quick Sort & Merge Sort**: Divide & Conquer sorting techniques.
- **Binary Search Variants**: First and last occurrence of an element in a sorted array.
- **Common Repeated Question**: Search an element in a rotated sorted array.

### 6. Dynamic Programming


- **Longest Common Subsequence (LCS)**: Used in text comparison algorithms.
- **0/1 Knapsack Problem**: Maximize profit with given weight constraints.
- **Common Repeated Question**: Count ways to reach the nth stair.

### 7. Graph Algorithms


- **Dijkstra's Algorithm**: Shortest path in a weighted graph.
- **Topological Sorting**: Using Kahn's Algorithm (BFS) or DFS.
- **Common Repeated Question**: Detect cycle in a directed graph.

### 8. Trees & Binary Search Trees (BST)


- **Inorder, Preorder, Postorder Traversal**: Depth-first traversals.
- **Lowest Common Ancestor (LCA)**: Find the LCA of two nodes in BST.
- **Common Repeated Question**: Convert a binary tree to a doubly linked list.

### 9. Hashing
- **HashMap & HashSet Operations**: Implement using chaining & open addressing.
- **Common Repeated Question**: Find the longest consecutive sequence in an array.

### 10. Greedy Algorithms


- **Huffman Coding**: Used in data compression.
- **Activity Selection Problem**: Select max activities without overlap.
- **Common Repeated Question**: Minimum number of coins to make a given amount.

You might also like