# Striver’s SDE Sheet – Top Coding Interview Problems

SDE Sheet Overview

SDE Sheet contains very handily crafted and picked top coding interview questions from different topics of Data Structures & Algorithms. These questions are one of the most asked coding interview questions in coding interviews of companies like Google, Amazon, Microsoft, Facebook, Swiggy, Flipkart, etc, and cover almost all of the concepts related to Data Structure & Algorithms.

#### Key Highlights:

• Cover all concepts in limited time that are needed for a DSA interview.
• In-depth video solutions covering brute, better, optimal solutions.
• Well structured articles/notes for quick revision.
• C++, Java, Python and JavaScript code.
• Company Tags associated with each program.
• Notes section to save your notes for quick revision.
• Used by over 2M+ people worldwide in the last 2 years.
• Software Engineer at Google .
• Offers from Facebook London and other startups.
• Previously worked with Amazon, Media.net .
• Followed by 1M+ people across YT, Linkedin and other socials.
• Candidate Master at Codeforces.
• 6* at Codechef.

If you still have doubts or questions, we’ve got you covered! Check out our FAQs section at the bottom of the page, where we address some common queries that might help clarify any concerns you have.

Note: Only start solving the problems, if you have prior knowledge of DSA, in case you are a beginner please switch to Strivers A2Z DSA Sheet.

Note: The Series doesn’t focus on any specific programming language. Instead, it emphasizes logic and uses pseudocode. The first two basic videos might use C++, but for Java tutorials, you can watch other YouTube videos. When tackling core problems of data structures and algorithms (DSA), the Series uses pseudocode that isn’t tied to any particular programming language. However, you can find code examples in your preferred language in the notes and articles provided.

Day 1: Arrays

Find both C++/Java codes of all problem in the articles in the first column.

Day 2: Arrays Part-II

Find both C++/Java codes of all problem in the articles in the first column.

Find the duplicate in an array of N+1 integers. Link 1 YT Link 2
Day 3: Arrays Part-III

Find both C++/Java codes of all problem in the articles in the first column.

Day 4: Arrays Part-IV

Find both C++/Java codes of all problem in the articles in the first column.

Count number of subarrays with given Xor K Link 1 Link 2

Find both C++/Java codes of all problem in the articles in the first column.

Delete a given Node when a node is given.(0(1) solution) Link 1 YT Link 2

Find both C++/Java codes of all problem in the articles in the first column.

Day 7: Linked List and Arrays

Find both C++/Java codes of all problem in the articles in the first column.

Day 8: Greedy Algorithm

Find both C++/Java codes of all problem in the articles in the first column.

Minimum number of platforms required for a railway Link 1 YT Link 2
Greedy algorithm to find minimum number of coins Link 1 YT Link 2
Activity Selection (it is the same as N meeting in one room) Link 1 YT Link 2
Day 9: Recursion

Find both C++/Java codes of all problem in the articles in the first column.
I will recommend you to do this playlist at first, so that you learn A-Z of recursion.

Day 10: Recursion and Backtracking

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of recursion.

Day 11: Binary Search

Find both C++/Java codes of all problem in the articles in the first column.

Find the element that appears once in a sorted array, and the rest element appears twice (Binary search) Link 1 YT Link 2
Search element in a sorted and rotated array/ find pivot where it is rotated Link 1 YT Link 2
Day 12: Heaps

Find both C++/Java codes of all problem in the articles in the first column.

Max heap, Min Heap Implementation (Only for interviews) Link 1 NA NA
Day 13: Stack and Queue

Find both C++/Java codes of all problem in the articles in the first column.

Implement Stack using Queue (using single queue) Link 1 YT Link 2
Implement Queue using Stack (0(1) amortized method) Link 1 YT Link 2
Day 14: Stack and Queue Part-II

Find both C++/Java codes of all problem in the articles in the first column.

Find the maximum of minimums of every window size Link 1 YT Link 2
Day 15: String

Find both C++/Java codes of all problem in the articles in the first column.

Roman Number to Integer and vice versa Link 1 YT Link 2
Day 16: String Part-II

Find both C++/Java codes of all problem in the articles in the first column.

Minimum characters needed to be inserted in the beginning to make it palindromic Link 1 YT Link 2
Day 17: Binary Tree

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Preorder inorder postorder in a single traversal Link 1 YT Link 2
Root to node path in a Binary Tree Link 1 YT Link 2
Day 18: Binary Tree part-II

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Level order Traversal / Level order traversal in spiral form Link 1 YT Link 2
Check if the Binary tree is height-balanced or not Link 1 YT Link 2
Check if two trees are identical or not Link 1 YT Link 2
Day 19: Binary Tree part-III

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Construct Binary Tree from inorder and preorder Link 1 YT Link 2
Construct Binary Tree from Inorder and Postorder Link 1 YT Link 2
Check if Binary Tree is the mirror of itself or not Link 1 YT Link 2
Day 20: Binary Search Tree

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Check is a BT is BST or not Link 1 YT Link 2
Find LCA of two nodes in BST Link 1 YT Link 2
Find the inorder predecessor/successor of a given Key in BST. Link 1 YT Link 2
Day 21: Binary Search Tree Part-II

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Find a pair with a given sum in BST Link 1 YT Link 2
Size of the largest BST in a Binary Tree Link 1 YT Link 2
Day 22: Binary Trees[Miscellaneous]

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Binary Trees.

Find median in a stream of running integers. Link 1 YT Link 2
K-th largest element in an unsorted array. Link 1 YT Link 2
Day 23: Graph

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Graphs.

Clone a graph (Not that easy as it looks) Link 1 YT Link 2
Detect A cycle in Undirected Graph using BFS Link 1 YT Link 2
Detect A cycle in Undirected Graph using DFS Link 1 YT Link 2
Detect A cycle in a Directed Graph using DFS Link 1 YT Link 2
Detect A cycle in a Directed Graph using BFS Link 1 YT Link 2
Number of islands(Do in Grid and Graph Both) Link 1 YT Link 2
Day 24: Graph Part-II

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Graphs.

Day 25: Dynamic Programming

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of DP.

Day 26: Dynamic Programming Part-II

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of DP.

Minimum sum path in the matrix, (count paths and similar type do, also backtrack to find the Minimum path) Link 1 YT Link 2
Day 27: Trie

Find both C++/Java codes of all problem in the articles in the first column.

I will recommend you to do this playlist at first, so that you learn A-Z of Tries.

Number of Distinct Substrings in a String Link 1 YT Link 2
Maximum XOR of two numbers in an array Link 1 YT Link 2
Maximum XOR With an Element From Array Link 1 YT Link 2
Day 28: Operating System
1. Refer Sheet for revision.
2. Revise OS notes that you would have made during your sem
3. If not made notes, spend 2 or 3 days and make notes from Knowledge Gate.
Day 29: DBMS
1. Refer Sheet for revision.
2. Revise DBMS notes that you would have made during your sem
3. If not made notes, spend 2 or 3 days and make notes from Knowledge Gate.
Day 30: Computer Networks
1. Refer Sheet for revision.
2. Revise CN notes that you would have made during your sem
3. If not made notes, spend 2 or 3 days and make notes from Knowledge Gate.
Day 31: Project Overview

Make a note of how will your represent your projects, and prepare all questions related to tech which you have used in your projects. Prepare a note which you can say for 3-10 minutes when he asks you that say something about the project.

Are these many questions enough for clearing any DSA round?
They cover all concepts, so conceptwise you will be covered. After that, it depends on your skill set, if you can tackle a new problem on the same concept. If you want to practice more problems, you can also check our Striver’s A2Z Sheet which has more problems linked to concepts.
Is this a language specific course?
Striver has made sure that the lectures are not language based, he teaches you the alogrithms. Post that he writes the pseudocodes, which are language independent. Loops and data structures are similar in every language, so you can always have the articles open on a parallel tab to check the code for C++, Java, Python or Javascript.
What if the codes are not available in the language I code in?
Open bard/chatGPT, and paste our C++ or any language code, and ask him to convert it into language of your choice, and he will do it for you.
How do I get my doubts resolved?
If you have any doubts, you can always open the youtube comments, and read through. Mostly all the common doubts are there in the YouTube section. If you still have doubts, we will highly encourage you to use technology, and open Bard/ChatGPT, and paste the code from our article, and ask them the doubt. This works for most of the use cases. If you still have doubt, you can post on the youtube comments, Striver usually replies if the community has not.
What is the difference between Strivers SDE Sheet vs Strivers A2Z DSA Course?
The Strivers SDE sheet is for people who have interviews in near future, and they are already versed with DSA basics. The Strivers A2Z DSA Course is for people who are starting of, or they want to practice more problems on concepts.
Do I need to pay anything?
As of today, every thing on takeUforward is free, however we will be happy if you give us a shoutout if the content helps you. That will mean a world to us.

Hurrah!! You are ready for your placement after a month of hard work without a cheat day.

~Striver

Share the sheet with your friends, created with love for takeUforward fam!