About Me

👨‍💻 I'm a Computer Science student at NIT Durgapur, with a passion for software development. I achieved a 98.18 percentile in GATE 2024 and have hands-on experience as a Software Development Engineer at HCL Tech.

🚀 My skills include Java Microservices, Spring Boot, Hibernate, and web development. I enjoy competitive programming and am always keen to learn new technologies.

📚 I am enthusiastic about collaborating with professionals and exploring opportunities in the tech industry. Let's connect and innovate together!

Topics

Explore various topics in competitive programming. Each topic includes practice problems and additional learning resources.

1. Bit Manipulation

Understand the techniques for manipulating bits and binary operations to solve complex problems efficiently.

2. Binary Search

Learn how to efficiently search for an element in a sorted array or a list using binary search algorithms.

3. Arrays

Explore the fundamentals of arrays, including various operations and techniques to solve problems efficiently.

4. Linked Lists

Learn about linked lists, including their operations and how they can be used to efficiently manage dynamic data.

5. Stacks

Understand stack data structures and their applications, including implementation and problem-solving techniques.

6. Queues

Explore queue data structures, including different types and their uses in various programming scenarios.

7. Trees

Learn about tree data structures, including binary trees, AVL trees, and other types of trees for efficient data management.

8. Graphs

Explore graph data structures and algorithms, including traversal techniques and shortest path algorithms.

9. Heaps

Understand heap data structures, including heap operations and their use in algorithms like heap sort.

10. Hashing

Learn about hashing techniques, hash tables, and their applications in optimizing search operations.

11. Sorting

Explore various sorting algorithms and their applications, including comparisons and optimizations.

12. Searching

Understand searching algorithms, including linear search and binary search, and their performance analysis.

13. Dynamic Programming

Learn about dynamic programming techniques and how to solve problems by breaking them into simpler subproblems.

14. Greedy Algorithms

Explore greedy algorithms and their use in finding optimal solutions by making the locally optimal choice at each step.

15. Backtracking

Understand backtracking algorithms and how they can be used to solve problems by exploring all possible solutions.

16. Divide and Conquer

Explore divide and conquer algorithms, which solve problems by breaking them down into smaller, more manageable subproblems.

Time Now

"The only limit to our realization of tomorrow is our doubts of today." - Franklin D. Roosevelt