Coding Interview Resources
50.3K subscribers
693 photos
7 files
398 links
This channel contains the free resources and solution of coding problems which are usually asked in the interviews.

Managed by: @love_data
Download Telegram
How to guess the solution for DSA problems?

Yes, it is possible.

You can predict the solution for a problem by analyzing the constraints.

Curious if you need a greedy approach or a backtracking solution? Trying to decide between an O(n^3) or an O(n log n) approach? Just scroll down the LeetCode question and look at the constraints of the main element.

Wondering if you should use dynamic programming or plain recursion? Should your solution be O(n^2) or O(n)? Simply examine the constraints of the main variable.

Here's a quick guide based on the value of (n):

- If n <= 12 Time complexity can be O(n!).
- If n <= 25 Time complexity can be O(2^n).
- If n <= 100 Time complexity can be O(n^4).
- If n <= 500 Time complexity can be O(n^3).
- If n <= 10 ^ 4 Time complexity can be O(n^2).
- If n <= 10 ^ 6 Time complexity can be O(n log n).
- If n <= 10 ^ 8 Time complexity can be O(n).
- If n > 10 ^ 8 Time complexity can be O(log n) or 0(1).
- If n <= 10 ^ 9 Time complexity can be O(sqrt{n}).
- If n > 10 ^ 9 Time complexity can be O(log n) or 0(1).

Understanding these constraints can help you choose the right algorithm and improve your problem-solving efficiency.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘9
Top 9 Http Methods-

GET ๐Ÿง - Retrieve data from a resource.
HEAD ๐ŸŽง - Retrieve the headers of a resource.
POST ๐Ÿ“ฎ - Submit data to a resource.
PUT ๐Ÿ“ฅ - Update an existing resource or create a new resource.
DELETE ๐Ÿ—‘๏ธ - Remove a resource.
CONNECT ๐Ÿ”— - Establish a network connection for a resource.
OPTIONS โš™๏ธ - Describe communication options for the target resource.
TRACE ๐Ÿ•ต๏ธโ€โ™‚๏ธ - Retrieve a diagnostic trace of the request.
PATCH ๐Ÿฉน - Apply a partial update to a resource.
โค6๐Ÿ‘5
Many people reached out to me saying telegram may get banned in their countries. So I've decided to create WhatsApp channels based on your interests ๐Ÿ‘‡๐Ÿ‘‡

Free Courses with Certificate: https://whatsapp.com/channel/0029Vamhzk5JENy1Zg9KmO2g

Jobs & Internship Opportunities:
https://whatsapp.com/channel/0029VaI5CV93AzNUiZ5Tt226

Web Development: https://whatsapp.com/channel/0029VaiSdWu4NVis9yNEE72z

Python Free Books & Projects: https://whatsapp.com/channel/0029VaiM08SDuMRaGKd9Wv0L

Java Resources: https://whatsapp.com/channel/0029VamdH5mHAdNMHMSBwg1s

Coding Interviews: https://whatsapp.com/channel/0029VammZijATRSlLxywEC3X

SQL: https://whatsapp.com/channel/0029VanC5rODzgT6TiTGoa1v

Power BI: https://whatsapp.com/channel/0029Vai1xKf1dAvuk6s1v22c

Programming Free Resources: https://whatsapp.com/channel/0029VahiFZQ4o7qN54LTzB17

Data Science Projects: https://whatsapp.com/channel/0029Va4QUHa6rsQjhITHK82y

Learn Data Science & Machine Learning: https://whatsapp.com/channel/0029Va8v3eo1NCrQfGMseL2D

Donโ€™t worry Guys your contact number will stay hidden!

ENJOY LEARNING ๐Ÿ‘๐Ÿ‘
๐Ÿ‘7โค2๐Ÿ‘1
Problem: Given an array a of n integers, find all such elements a[i], a[j], a[k], and a[l], such that a[i] + a[j] + a[k] + a[l] = target? Output all unique quadruples.

Solution: of course one way would be to just use 4 nested loops to iterate over all possible quadruples, but this is quite slow O(n^4). Another way is to iterate over all triples, put the sums into a set and then in another pass over elements a[i] check if we have any triple with sum (T - a[i]). This would give us O(n^3), and we need to keep track of which elements gave us the required sums. Another step is to iterate over all pairs and put results into a map from integer to indexes of elements, which produce this sum. Then in another pass over this map we can see if we can get a sum of T using two different values from the map (and they shouldn't be using the same element twice). This approach has time complexity O(n^2).
๐Ÿ‘6โค3
Solve these 16 problem solving patterns to learn enough DSA

1. Sliding window pattern.
2. Two pointer pattern.
3. Fast & slow pointers pattern.
4. Merger interval pattern.
5. Cyclic sort pattern.
6. In-place reversal of linked list pattern.
7. Tree breadth first search pattern.
8. Depth first search DFS pattern.
9. Two heap pattern.
10. Subsets pattern.
11. Modified binary search pattern.
12. Bitwise xor pattern.
13. Top 'K' elements pattern.
14. K-way merge pattern.
15. 0/1 knapsack DP pattern.
16. Topological sort Graph pattern.
โค19๐Ÿ‘9
๐—ฆ๐˜๐—ฒ๐—ฝ๐˜€ ๐—ง๐—ผ ๐—ฃ๐—ฟ๐—ฒ๐—ฝ๐—ฎ๐—ฟ๐—ฒ ๐—™๐—ผ๐—ฟ ๐—ฎ ๐—ง๐—ฒ๐—ฐ๐—ต๐—ป๐—ถ๐—ฐ๐—ฎ๐—น ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„

๐Ÿ‘‰ ๐—ž๐—ป๐—ผ๐˜„ ๐˜๐—ต๐—ฒ ๐—๐—ผ๐—ฏ: Review the job description.
๐Ÿ‘‰ ๐—•๐—ฎ๐˜€๐—ถ๐—ฐ๐˜€: Revise fundamental concepts.
๐Ÿ‘‰ ๐—–๐—ผ๐—ฑ๐—ฒ ๐—ฃ๐—ฟ๐—ฎ๐—ฐ๐˜๐—ถ๐—ฐ๐—ฒ: Solve coding problems.
๐Ÿ‘‰ ๐—ฃ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜๐˜€: Be ready to discuss past work.
๐Ÿ‘‰ ๐— ๐—ผ๐—ฐ๐—ธ ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„๐˜€: Practice with friends or online.
๐Ÿ‘‰ ๐—ฆ๐˜†๐˜€๐˜๐—ฒ๐—บ ๐——๐—ฒ๐˜€๐—ถ๐—ด๐—ป: Review basics if needed.
๐Ÿ‘‰ ๐—ค๐˜‚๐—ฒ๐˜€๐˜๐—ถ๐—ผ๐—ป๐˜€: Prepare some for the interviewer.
๐Ÿ‘‰ ๐—ฅ๐—ฒ๐˜€๐˜: Sleep well and stay calm.

Remember, practice and confidence are the key! Good luck with your technical interview! ๐ŸŒŸ๐Ÿ‘

You can check these resources for Coding interview Preparation

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘11โค2๐Ÿ‘Œ1
Beginnerโ€™s Roadmap to Learn Data Structures & Algorithms

1. Foundations: Start with the basics of programming and mathematical concepts to build a strong foundation.

2. Data Structure: Dive into essential data structures like arrays, linked lists, stacks, and queues to organise and store data efficiently.

3. Searching & Sorting: Learn various search and sort techniques to optimise data retrieval and organisation.

4. Trees & Graphs: Understand the concepts of binary trees and graph representation to tackle complex hierarchical data.

5. Recursion: Grasp the principles of recursion and how to implement recursive algorithms for problem-solving.

6. Advanced Data Structures: Explore advanced structures like hashing, heaps, and hash maps to enhance data manipulation.

7. Algorithms: Master algorithms such as greedy, divide and conquer, and dynamic programming to solve intricate problems.

8. Advanced Topics: Delve into backtracking, string algorithms, and bit manipulation for a deeper understanding.

9. Problem Solving: Practice on coding platforms like LeetCode to sharpen your skills and solve real-world algorithmic challenges.

10. Projects & Portfolio: Build real-world projects and showcase your skills on GitHub to create an impressive portfolio.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘7
Is DSA important for interviews?

Yes, DSA (Data Structures and Algorithms) is very important for interviews, especially for software engineering roles.

I often get asked, What do I need to start learning DSA?

Here's the roadmap for getting started with Data Structures and Algorithms (DSA):

๐—ฃ๐—ต๐—ฎ๐˜€๐—ฒ ๐Ÿญ: ๐—™๐˜‚๐—ป๐—ฑ๐—ฎ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐—น๐˜€
1. Introduction to DSA
- Understand what DSA is and why it's important.
- Overview of complexity analysis (Big O notation).

2. Complexity Analysis
- Time Complexity
- Space Complexity

3. Basic Data Structures
- Arrays
- Linked Lists
- Stacks
- Queues

4. Basic Algorithms
- Sorting (Bubble Sort, Selection Sort, Insertion Sort)
- Searching (Linear Search, Binary Search)

5. OOP (Object-Oriented Programming)

๐—ฃ๐—ต๐—ฎ๐˜€๐—ฒ ๐Ÿฎ: ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐—บ๐—ฒ๐—ฑ๐—ถ๐—ฎ๐˜๐—ฒ ๐—–๐—ผ๐—ป๐—ฐ๐—ฒ๐—ฝ๐˜๐˜€
1. Two Pointers Technique
- Introduction and basic usage
- Problems: Pair Sum, Triplets, Sorted Array Intersection etc..

2. Sliding Window Technique
- Introduction and basic usage
- Problems: Maximum Sum Subarray, Longest Substring with K Distinct Characters, Minimum Window Substring etc..

3. Line Sweep Algorithms
- Introduction and basic usage
- Problems: Meeting Rooms II, Skyline Problem

4. Recursion

5. Backtracking

6. Sorting Algorithms
- Merge Sort
- Quick Sort

7. Data Structures
- Hash Tables
- Trees (Binary Trees, Binary Search Trees)
- Heaps

๐—ฃ๐—ต๐—ฎ๐˜€๐—ฒ ๐Ÿฏ: ๐—”๐—ฑ๐˜ƒ๐—ฎ๐—ป๐—ฐ๐—ฒ๐—ฑ ๐—–๐—ผ๐—ป๐—ฐ๐—ฒ๐—ฝ๐˜๐˜€
1. Graph Algorithms
- Graph Representation (Adjacency List, Adjacency Matrix)
- BFS (Breadth-First Search)
- DFS (Depth-First Search)
- Shortest Path Algorithms (Dijkstra's, Bellman-Ford)
- Minimum Spanning Tree (Kruskal's, Prim's)

2. Dynamic Programming
- Basic Problems (Fibonacci, Knapsack etc..)
- Advanced Problems (Longest Increasing Subsea mice, Matrix Chain Subsequence, Multiplication etc..)

3. Advanced Trees
- AVL Trees
- Red-Black Trees
- Segment Trees
- Trie

๐—ฃ๐—ต๐—ฎ๐˜€๐—ฒ ๐Ÿฐ: ๐—ฃ๐—ฟ๐—ฎ๐—ฐ๐˜๐—ถ๐—ฐ๐—ฒ ๐—ฎ๐—ป๐—ฑ ๐—”๐—ฝ๐—ฝ๐—น๐—ถ๐—ฐ๐—ฎ๐˜๐—ถ๐—ผ๐—ป
1. Competitive Programming Platforms: LeetCode, Codeforces, HackerRank, CodeChef Solve problems daily

2. Mock Interviews
- Participate in mock interviews to simulate real interview scenarios.
- DSA interviews assess your ability to break down complex problems into smaller steps.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘18โค4
When youโ€™re in an interview, itโ€™s super important to know how to talk about your projects in a way that impresses the interviewer. Here are some key points to help you do just that:

โžค ๐—ฃ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜ ๐—ข๐˜ƒ๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„:
- Start with a quick summary of the project you worked on. What was it all about? What were the main goals? Keep it short and sweet something you can explain in about 30 seconds.

โžค ๐—ฃ๐—ฟ๐—ผ๐—ฏ๐—น๐—ฒ๐—บ ๐—ฆ๐˜๐—ฎ๐˜๐—ฒ๐—บ๐—ฒ๐—ป๐˜:
- What problem were you trying to solve with this project? Explain why this problem was important and needed addressing.

โžค ๐—ฃ๐—ฟ๐—ผ๐—ฝ๐—ผ๐˜€๐—ฒ๐—ฑ ๐—ฆ๐—ผ๐—น๐˜‚๐˜๐—ถ๐—ผ๐—ป:
- Describe the solution you came up with. How does it work, and why is it a good fix for the problem?

โžค ๐—ฌ๐—ผ๐˜‚๐—ฟ ๐—ฅ๐—ผ๐—น๐—ฒ:
- Talk about what you specifically did. What were your main tasks? Did you face any challenges, and how did you overcome them? Make sure itโ€™s clear whether you were leading the project, a key player, or supporting the team.

โžค ๐—ง๐—ฒ๐—ฐ๐—ต๐—ป๐—ผ๐—น๐—ผ๐—ด๐—ถ๐—ฒ๐˜€ ๐—ฎ๐—ป๐—ฑ ๐—ง๐—ผ๐—ผ๐—น๐˜€:
- Mention the tech and tools you used. This shows your technical know-how and your ability to choose the right tools for the job.

โžค ๐—œ๐—บ๐—ฝ๐—ฎ๐—ฐ๐˜ ๐—ฎ๐—ป๐—ฑ ๐—”๐—ฐ๐—ต๐—ถ๐—ฒ๐˜ƒ๐—ฒ๐—บ๐—ฒ๐—ป๐˜๐˜€:
- Share the results of your project. Did it make things better? How? Mention any improvements, efficiencies, or positive feedback you got.

โžค ๐—ง๐—ฒ๐—ฎ๐—บ ๐—–๐—ผ๐—น๐—น๐—ฎ๐—ฏ๐—ผ๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป:
- Talk about how you collaborated. What was your role in the team? How did you communicate and contribute to the teamโ€™s success?

โžค ๐—Ÿ๐—ฒ๐—ฎ๐—ฟ๐—ป๐—ถ๐—ป๐—ด ๐—ฎ๐—ป๐—ฑ ๐——๐—ฒ๐˜ƒ๐—ฒ๐—น๐—ผ๐—ฝ๐—บ๐—ฒ๐—ป๐˜:
- Reflect on what you learned from the project. What new skills did you gain, and what would you do differently next time?

โžค ๐—ง๐—ถ๐—ฝ๐˜€ ๐—ณ๐—ผ๐—ฟ ๐—ฌ๐—ผ๐˜‚๐—ฟ ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„ ๐—ฃ๐—ฟ๐—ฒ๐—ฝ๐—ฎ๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป:
- Be ready with a 30 second elevator pitch about your projects, and also have a five-minute detailed overview ready.
- If thereโ€™s a pause after you describe the project, donโ€™t hesitate to ask if theyโ€™d like more details or if thereโ€™s a specific part theyโ€™re interested in.

By preparing your project details thoroughly and understanding what the interviewer is looking for, you can talk about your experience in a way that really showcases your skills and increases your chances of getting the job.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘11
๐ŸŸ Here is a complete roadmap to learn Data Structures and Algorithms (DSA) ๐ŸŸ


1. Basics of Programming: Start by learning the basics of a programming language like Python, Java, or C++. Understand concepts like variables, loops, functions, and arrays.

2. Data Structures: Study fundamental data structures like arrays, linked lists, stacks, queues, trees, graphs, and hash tables. Understand the operations that can be performed on these data structures and their time complexities.

3. Algorithms: Learn common algorithms like searching, sorting, recursion, dynamic programming, greedy algorithms, and divide and conquer. Understand how these algorithms work and their time complexities.

4. Problem Solving: Practice solving coding problems on platforms like LeetCode, HackerRank, or Codeforces. Start with easy problems and gradually move to medium and hard problems.

5. Complexity Analysis: Learn how to analyze the time and space complexity of algorithms. Understand Big O notation and how to calculate the complexity of different algorithms.

6. Advanced Data Structures: Study advanced data structures like AVL trees, B-trees, tries, segment trees, and fenwick trees. Understand when and how to use these data structures in problem-solving.

7. Graph Algorithms: Learn graph traversal algorithms like BFS and DFS. Study algorithms like Dijkstra's algorithm, Bellman-Ford algorithm, and Floyd-Warshall algorithm for shortest path problems.

8. Dynamic Programming: Master dynamic programming techniques for solving complex problems efficiently. Practice solving dynamic programming problems to build your skills.

9. Practice and Review: Regularly practice coding problems and review your solutions. Analyze your mistakes and learn from them to improve your problem-solving skills.

10. Mock Interviews: Prepare for technical interviews by participating in mock interviews and solving interview-style coding problems. Practice explaining your thought process and reasoning behind your solutions.

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘8
๐—ฆ๐˜๐—ฒ๐—ฝ๐˜€ ๐—ง๐—ผ ๐—ฃ๐—ฟ๐—ฒ๐—ฝ๐—ฎ๐—ฟ๐—ฒ ๐—™๐—ผ๐—ฟ ๐—ฎ ๐—ง๐—ฒ๐—ฐ๐—ต๐—ป๐—ถ๐—ฐ๐—ฎ๐—น ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„

๐Ÿ‘‰ ๐—ž๐—ป๐—ผ๐˜„ ๐˜๐—ต๐—ฒ ๐—๐—ผ๐—ฏ: Review the job description.
๐Ÿ‘‰ ๐—•๐—ฎ๐˜€๐—ถ๐—ฐ๐˜€: Revise fundamental concepts.
๐Ÿ‘‰ ๐—–๐—ผ๐—ฑ๐—ฒ ๐—ฃ๐—ฟ๐—ฎ๐—ฐ๐˜๐—ถ๐—ฐ๐—ฒ: Solve coding problems.
๐Ÿ‘‰ ๐—ฃ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜๐˜€: Be ready to discuss past work.
๐Ÿ‘‰ ๐— ๐—ผ๐—ฐ๐—ธ ๐—œ๐—ป๐˜๐—ฒ๐—ฟ๐˜ƒ๐—ถ๐—ฒ๐˜„๐˜€: Practice with friends or online.
๐Ÿ‘‰ ๐—ฆ๐˜†๐˜€๐˜๐—ฒ๐—บ ๐——๐—ฒ๐˜€๐—ถ๐—ด๐—ป: Review basics if needed.
๐Ÿ‘‰ ๐—ค๐˜‚๐—ฒ๐˜€๐˜๐—ถ๐—ผ๐—ป๐˜€: Prepare some for the interviewer.
๐Ÿ‘‰ ๐—ฅ๐—ฒ๐˜€๐˜: Sleep well and stay calm.

Remember, practice and confidence are the key! Good luck with your technical interview! ๐ŸŒŸ๐Ÿ‘

You can check these resources for Coding interview Preparation

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘4
โญ• WIPRO INTERVIEW EXPERIENCE โญ•

1) Intro.
2) Willing to Relocate.
3) Service Agreement.
4) about Internship (if you have done)
   (details like what did you do there or
   learnt there, how many other people
   you worked with).
5) About Project ( details like name,
     what made you do that project, what
     Tech Stacks used, Difficulties faced,
     whats the use of that project ).
6) In which Programming language you
    are proficient (i said python ).
7) Why python and why not any other
    languages.
8) Any one simple Theoritical question
    from that language you mentioned
   (asked limitations of python).

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘15โค1
Best suited IDE's for programming languages:

1. JavaScript => VSCode
2. Python => PyCharm
3. C# => Visual Studio
4. Java => IntelliJ IDEA
5. Ruby => Ruby Mine
6. C & C++ => CLion
๐Ÿ‘18
PREPARING FOR AN ONLINE INTERVIEW?

10 basic tips to consider when invited/preparing for an online interview:

1. Get to know the online technology that the interviewer(s) will use. Is it a phone call, WhatsApp, Skype or Zoom interview? If not clear, ask.

2. Familiarize yourself with the online tools that youโ€™ll be using. Understand how Zoom/Skype works and test it well in advance. Test the sound and video quality.

3. Ensure that your internet connection is stable. If using mobile data, make sure itโ€™s adequate to sustain the call to the end.

4. Ensure the lighting and the background is good. Remove background clutter. Isolate yourself in a place where youโ€™ll not have any noise distractions.

5. For Zoom/Skype calls, use your desktop or laptop instead of your phone. Theyโ€™re more stable especially for video calls.

6. Mute all notifications on your computer/phone to avoid unnecessary distractions.

7. Ensure that your posture is right. Just because itโ€™s a remote interview does not mean you slouch on your couch. Maintain an upright posture.

8. Prepare on the other job specifics just like you would for a face-to-face interview

9. Dress up like you would for a face-to-face interview.

10. Be all set at least 10 minutes to the start of interview.
๐Ÿ‘6
๐Ÿ”Ÿ ๐˜๐—ถ๐—ฝ๐˜€ ๐—ณ๐—ผ๐—ฟ ๐—ป๐—ฒ๐˜„ ๐—ฐ๐—ผ๐—ฑ๐—ฒ๐—ฟ๐˜€: ๐Ÿ”–

1. Learn Fundamentals:  Use W3Schools, FreeCodeCamp, or MDN for solid basics.

2. Watch and Code Along:  Follow YouTube tutorials to code in real-time.

3. Practice Regularly:  Build small projects to sharpen your skills.

4. Join Coding Communities:  Engage on platforms like X, Discord, and Reddit for support.

5. Use AI Tools Wisely: Leverage tools like ChatGPT responsibly to aid learning.

6. Master Git and Version Control:  Learn to manage your code effectively.
7. Stay Updated:  Follow tech blogs, newsletters, and podcasts.

8. Network:  Attend meetups, hackathons, and online coding events.

9. Explore Open Source:  Contribute to projects to gain experience.

10.Never Stop Learning:  Technology evolvesโ€”keep exploring new languages and frameworks.

Best Programming Resources: https://topmate.io/coding/886839

All the best ๐Ÿ‘๐Ÿ‘
๐Ÿ‘9โค2
API design involves making decisions about how your API will interact with consumers.

The major API design choices are:

REST (Representational State Transfer): It uses HTTP methods (GET, POST, PUT, DELETE) for CRUD operations on resources. It's stateless and commonly used for web-based APIs

GraphQL: Query language for APIs, it allows clients to request specific data

RPC (Remote Procedure Call): High-performance, language-agnostic framework, often used in microservices architectures
๐Ÿ‘4
120 Days DSA Roadmap:


DAYS 1-5 :
1. Language basics
2. Space & Time Complexity

DAYS 6-15 :
1. Pattern Printing
2. Recursion
3. Backtracking

DAYS 16-30 :
Basic data structures
1. Arrays
2. Linked List
3. Stacks & Queues

DAYS 31-40 :
Algorithms
1. Searching
2. Sorting - Bubble sort, Insertion sort, Selection sort, Merge sort, Quick sort

โœ… Suggestion to start with online contests and hackathons

DAYS 41-60:
Complex data structures
1. Hashmaps
2. Nodes
3. Trees
4. Heaps
5. Sliding window (technique)

DAYS 61-85:
Graphs
1. BFS
2. DFS
3. Dijkstra
4. Floyd Warshall
5. Prim
6. Kruskal
7. Kosarajuโ€™s algorithm
8. Topological Sort
9. Bellman Ford
10. Normal DSU
11. DSU by rank

DAYS 86-95:
Dynamic Programming
1. Memoisation
2. Tabulation

DAYS 96-105:
1. Concepts of OOPs

DAYS 106-120:
1. Number Theory
2. Bit Manipulation
3. Tries

Best DSA RESOURCES: https://topmate.io/coding/886874

All the best ๐Ÿ‘๐Ÿ‘
โค13๐Ÿ‘6
โŒจ๏ธ JavaScript: 5 Useful Web APIs
๐Ÿ‘7๐Ÿ‘1