DS-Algo, CP Questions | CS-Core subjects | Notes | Practice | Resources to improve...! π
This repository hosts a list of DS-Algo Questions that I've solved, CS-Core Questions and resources that I have been following, and the handwritten notes I made; To improve my thinking skills to crack the opportunities that come in my way.
In progress: Since Nov 2020 - present.
- Written beginner level codes in Py/Java/C/C++ to get an experience of every language.
Codes in C | Codes in Cpp | Codes in Java | Codes in Python.
-
Learned Git/Github.
-
Finally decided to go with C++ (cpp).
A compiled list of resources that I have been following and questions that I have been practising:
GFG | Hackerrank | Leetcode | Youtube University | Misc
- CS Core Subjects: DBMS, Networks, OOPS, OS
- Subjective Questions
- Puzzles
- System Design
- DS-Algo (Check the table at bottom for DS Algo Qs. solved)
- Learned something unique
- Off-campus info.
- Competitive Coding Resources
- CS-Core Must Do Questions
- DS-Algo Must Do Questions
- Other resources
- Misc
- Memory Dump of interesting tech stuff
Link to my handwritten notes
(updated occasionally):
(both links host the same notes)
- This section consists of a list of DS-Algo Questions that I have practised for internships/placements:
- These questions can be accessed via this path:
myProgramming/Coding/[IMP] INTERN-PLACEMENTS-PREP/DS-ALGO_QUESTIONS_[SOLVED]/
.
(Link) - Note: The main ans logic of the question is coded & just pasted in main function, than creating a separate function...!.
- Basics
- Arrays
- String
- Linked List
- Stack and Queue
- Trees (BT and BST)
- Heap
- Recursion
- Hashing
- Graph
- Greedy
- Dynamic Programming
- Backtracking
- Bit Magic
- Sorting Algos
- Misc (Others)
Data Structure | Code |
---|---|
Graph | Check |
Linkedlist | Check |
Tree | Check |
Problem | Link | My Solution |
---|---|---|
Two numbers with sum closest to 0 | Visit | Check |
Convert array to zig-zag fashion | Visit | Check |
Boolean Matrix | Visit | Check |
Chocolate Distribution Problem | Visit | Check |
Consecutive 1's not allowed | Visit | Check |
Contiguous Subarray with given sum | Visit | Check |
Count Inversions | Visit | Check |
Count the triplets | Visit | Check |
Element with left side smaller and right side greater | Visit | Check |
Equilibrium Point | Visit | Check |
Find Missing And Repeating | Visit | Check |
Kadane's Algorithm | Visit | Check |
Kth smallest element | Visit | Check |
Largest Number formed from an Array | Visit | Check |
Last index of One | Visit | Check |
Leaders in an array | Visit | Check |
Majority Element | Visit | Check |
Maximum Index | Visit | Check |
Merge Without Extra Space | Visit | Check |
Minimum Platforms | Visit | Check |
Missing number in array | Visit | Check |
Nuts and Bolts Problem | Visit | Check |
Pythagorean Triplet | Visit | Check |
Rearrange Array Alternately | Visit | Check |
Smallest Positive missing number | Visit | Check |
Reverse array in groups | Visit | Check |
Sort an array of 0s, 1s and 2s | Visit | Check |
Spirally traversing a matrix | Visit | Check |
Stock buy and sell | Visit | Check |
Trapping Rain Water | Visit | Check |
Find All Four Sum Numbers | Visit | Check |
Find the Duplicate Number | Visit | Check |
Fractional Knapsack | Visit | Check |
Max Consecutive Ones | Visit | Check |
Merge Intervals | Visit | Check |
Next Permutation | Visit | Check |
Count all possible paths from top left to bottom right | Visit | Check |
Remove Duplicates from Sorted Array | Visit | Check |
Reverse Pairs | Visit | Check |
Rotate Image | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Check if string is rotated by two places | Visit | Check |
Longest Palindrome in a String | Visit | Check |
Smallest window in a string containing all the characters of another string | Visit | Check |
Permutations of a given string | Visit | Check |
Remove All Adjacent Duplicates In String | Visit | Check |
Remove Duplicates | Visit | Check |
Reverse words in a given string | Visit | Check |
Longest Substring Without Repeating Characters | Visit | Check |
Anagram | Visit | Check |
Longest Prefix Suffix - KMP Algo | Visit | Check |
Implement strstr & Rabin Karp Algo | Visit | Check |
Roman Number to Integer | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Construct a Linkedlist | Visit | Check |
Implement Queue using Linked List | Visit | Check |
Implement Stack using Linked List | Visit | Check |
Finding middle element in a linked list | Visit | Check |
Pairwise swap elements of a linked list | Visit | Check |
Remove loop in Linked List | Visit | Check |
Reverse a linked list | Visit | Check |
Rotate a Linked List | Visit | Check |
Sort a linked list of 0s, 1s and 2s | Visit | Check |
Check if the linked list has loop or not (Floyd's Algorithm) | Visit | Check |
Add two numbers represented by linked lists | Visit | Check |
Check if Linked List is Palindrome | Visit | Check |
Flattening a Linked List | Visit | Check |
Nth node from end of linked list | Visit | Check |
Insert and delete from doubly linkedlist | Visit | Check |
Intersection point of two linked lists | Visit | Check |
Linked List Cycle II | Visit | Check |
Merge two sorted linked lists | Visit | Check |
Reverse a Linked List in groups of given size | Visit | Check |
Problem | Link | My Solution |
---|---|---|
First non-repeating character in a stream | Visit | Check |
Gas Station (Circular Tour) | Visit | Check |
Get minimum element from stack | Visit | Check |
Largest Rectangular Area in a Histogram | Visit | Check |
LRU Cache | Visit | Check |
Maximum of all subarrays of size k | Visit | Check |
Given a binary matrix, find the maximum size rectangle binary-sub-matrix with all 1βs | Visit | Check |
Special Stack | Visit | Check |
Next Greater Element | Visit | Check |
Next Greater Element (Right) | Visit | Check |
Parenthesis Checker | Visit | Check |
Queue using two Stacks | Visit | Check |
Rotten Oranges | Visit | Check |
Stack using two queues | Visit | Check |
Stack using two queues | Visit | Check |
Stock Span Problem | Visit | Check |
(Binary Tree)
Problem | Link | My Solution |
---|---|---|
Level order traversal (BFS) | Visit | Check |
Inorder Traversal (Iterative & Recursive) | Visit | Check |
Postorder Traversal (Iterative & Recursive) | Visit | Check |
Preorder Traversal (Iterative & Recursive) | Visit | Check |
Lowest Common Ancestor in a Binary Tree | Visit | Check |
Constructing BT | Visit | Check |
Binary Tree to DLL | Visit | Check |
Bottom View of Binary Tree (Iterative & Recursive) | Visit | Check |
Check for Balanced Tree | Visit | Check |
Determine if Two Trees are Identical | Visit | Check |
Check if Tree is Isomorphic | Visit | Check |
Symmetric Tree | Visit | Check |
Count Leaves in Binary Tree | Visit | Check |
Diameter of Binary Tree | Visit | Check |
Flatten Binary Tree to Linked List | Visit | Check |
Height of Binary Tree | Visit | Check |
Left View of Binary Tree (Iterative & Recursive) | Visit | Check |
Binary Tree Maximum Path Sum | Visit | Check |
Mirror Tree | Visit | Check |
Serialize and Deserialize a Binary Tree | Visit | Check |
Level order traversal in spiral form | Visit | Check |
Top View of Binary Tree | Visit | Check |
Tree from Postorder and Inorder | Visit | Check |
Construct Tree from Inorder & Preorder | Visit | Check |
Vertical Traversal of Binary Tree | Visit | Check |
(Binary Search Tree)
Problem | Link | My Solution |
---|---|---|
Constructing a BST | Visit | Check |
Lowest Common Ancestor in a BST | Visit | Check |
Check for BST | Visit | Check |
Floor and Ceil from a BST | Visit | Check |
k-th smallest element in BST | Visit | Check |
Largest BST | Visit | Check |
Find a pair with given target in BST | Visit | Check |
Populating Next Right Pointers in Each Node | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Heap Sort | Visit | Check |
Kth largest element in a stream | Visit | Check |
Find median in a stream | Visit | Check |
Merge K sorted linked lists | Visit | Check |
Find k closest numbers in an unsorted array | Visit | Check |
Find k numbers with most occurrences in the given array | Visit | Check |
Kβth Smallest/Largest Element in Unsorted Array | Visit | Check |
Connect n ropes with minimum cost | Visit | Check |
Sort a K Sorted (nearly sorted) Array | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Flood fill Algorithm | Visit | Check |
Josephus problem | Visit | Check |
Number of paths | Visit | Check |
Special Keyboard | Visit | Check |
Generate all balanced parenthesis | Visit | Check |
Combination Sum I | Visit | Check |
Combination Sum II | Visit | Check |
kth symbol in grammar | Visit | Check |
Letter case permutation | Visit | Check |
Permutation Sequence | Visit | Check |
Permutation with spaces | Visit | Check |
Reverse a stack using recursion | Visit | Check |
Sort an array recursively | Visit | Check |
Subset Sums | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Zero Sum Subarrays | Visit | Check |
Find all pairs with a given sum | Visit | Check |
Common Elements | Visit | Check |
Count distinct elements in every window | Visit | Check |
Longest Continuous Increasing Subsequence | Visit | Check |
Longest Consecutive Sequence | Visit | Check |
Sort an array according to the other | Visit | Check |
Sorting Elements of an Array by Frequency | Visit | Check |
Problem | Link | My Solution |
---|---|---|
BFS of graph | Visit | Check |
DFS of Graph | Visit | Check |
Find whether path exist | Visit | Check |
Alien Dictionary | Visit | Check |
Detect cycle in a directed graph | Visit | Check |
Detect cycle in an undirected graph | Visit | Check |
Floyd Warshall | Visit | Check |
Minimum Swaps to Sort | Visit | Check |
Find the number of islands | Visit | Check |
Topological sort | Visit | Check |
Dijkstra's Algorithm - Shortest Path in Undirected Graph | Visit | Check |
Bellman Ford Algorithm - Detect Negative Weight Cycle in Graphs | Visit | Check |
Check if it's a Bipartite Graph | Visit | Check |
Bridges in Graph (or) Cut Edge | Visit | Check |
Disjoint Set - Union By Rank and Path Compression | Visit | Check |
Kosaraju's Algorithm for Strongly Connected Components (SCC) | Visit | Check |
Kruskal's Algorithm to find MST | Visit | Check |
MST Prims Algo | Visit | Check |
Shortest Path in Undirected Graph with Unit Weights | Visit | Check |
Shortest Path in Directed Acyclic Graph (DAG) | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Activity Selection | Visit | Check |
Largest number with given sum | Visit | Check |
Maximize Toys | Visit | Check |
Minimize the Heights II | Visit | Check |
Minimize the sum of product | Visit | Check |
N meetings in one room | Visit | Check |
Job Sequencing Problem | Visit | Check |
Greedy Algorithm to find Minimum number of Coins | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Box Stacking | Visit | Check |
Count number of hops | Visit | Check |
Max length chain | Visit | Check |
Minimum number of jumps | Visit | Check |
Minimum Operations | Visit | Check |
0/1 Knapsack Problem (DP) | Visit | Check |
0/1 Knapsack Problem (Memoization) | Visit | Check |
Count ways to reach the n'th stair | Visit | Check |
Get Minimum Squares | Visit | Check |
Find length of longest common subsequence & print the subsequence (string) | Visit | Check |
Given two strings βXβ and βYβ, find the length of the longest common substring | Visit | Check |
Longest Palindromic Subsequence Length | Visit | Check |
Shortest Common Supersequence Length | Visit | Check |
Longest Increasing Subsequence | Visit | Check |
Coin change problem - I | Visit | Check |
Coin change problem - II | Visit | Check |
Count number of subset with a given difference / Target Sum | Visit | Check |
Count subsets sum with X | Visit | Check |
Edit Distance | Visit | Check |
Egg dropping problem | Visit | Check |
Partition problem | Visit | Check |
House Robber | Visit | Check |
Longest Repeated Subsequence | Visit | Check |
Maximum Product Subarray | Visit | Check |
Maximum sum increasing subsequence | Visit | Check |
Matrix Chain Multiplication | Visit | Check |
Minimum number of deletions to make a string palindrome | Visit | Check |
Minimum Path Sum | Visit | Check |
Minimum sum partition | Visit | Check |
Palindrome partitioning problem | Visit | Check |
Printing Shortest Common Supersequence | Visit | Check |
Maximize The Cut Segments/ Rod Cutting | Visit | Check |
Scrambled String | Visit | Check |
Sequence Pattern Matching | Visit | Check |
Subset sum problem | Visit | Check |
Minimum number of deletions and insertions to transform one string into another | Visit | Check |
Knapsack with Duplicate Items/ Unbounded Knapsack | Visit | Check |
Weighted Job Scheduling | Visit | Check |
Word Break | Visit | Check |
Problem | Link | My Solution |
---|---|---|
N-Queen Problem | Visit | Check |
Word Boggle | Visit | Check |
M-Coloring Problem | Visit | Check |
Permutations of a given string | Visit | Check |
Print all possible paths from top left to bottom right of a mXn matrix | Visit | Check |
Rat in a Maze Problem - I | Visit | Check |
Sudoku Solver | Visit | Check |
Problem | Link | My Solution |
---|---|---|
BASIC Bit Operations | Visit Page | Check |
Find first set bit | Visit | Check |
Find the 2 unique numbers from an array where all numbers are repeated twice except the two | Visit | Check |
Find number of ones in bits of a number | Visit | Check |
Check if no. is power of 2 | Visit | Check |
Power Set | Visit | Check |
Find the unique number from an array where all numbers are repeated THRICE except the unique one | Visit | Check |
Find the unique number from an array where all numbers are repeated TWICE except the unique one | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Bubble Sort | Visit | Check |
Counting Sort | Visit | Check |
Heap Sort | Visit | Check |
Insertion Sort | Visit | Check |
Merge Sort | Visit | Check |
Quick Sort | Visit | Check |
Radix Sort | Visit | Check |
Selection Sort | Visit | Check |
Shell Sort | Visit | Check |
Problem | Link | My Solution |
---|---|---|
Allocate minimum number of pages | Visit | Check |
Binary Search | Visit | Check |
Given two number x and n, find n-th root of x | Visit | Check |
Find the element that appears once in sorted array | Visit | Check |
Floor in a Sorted Array | Visit | Check |
Median in a row-wise sorted Matrix | Visit | Check |
Nth Natural Number | Visit | Check |
Find the Rotation Count in Rotated Sorted array | Visit | Check |
Search in row wise and column wise sorted array | Visit | Check |
Sum of Middle Elements of two sorted arrays | Visit | Check |
The Celebrity Problem | Visit | Check |
Trailing zeroes in factorial | Visit | Check |
Miscellaneous Qs | - | Check |
- Side Note: Github gist to some random questions solved again for practice from Leetcode/GFG/Neetcode, etc. ~ Gist