# DSA Self Paced Course – Basic to Advanced Online Course By GeeksforGeeks

If you’re preparing out for a tech interview with a **product-based company **or planning to do the same? Are you looking for a **DSA Course? **Don’t know how to begin with data structures and algorithms? .. Then you are at the right place.

Almost every IT giant including Facebook, Google, Amazon, etc. focuses more on the DSA skills of the candidates during the interviews. The reason behind it could be as your proficiency and command over DSA not only allows the interviewer to assess your programming or technical skills but also shows your problem-solving skills to come up with an optimized solution for the particular problem. **In a nutshell, you can’t afford to avoid preparing for Data Structures & Algorithm for your upcoming tech interviews!**

Now, you must be coming up with various questions in your mind like *how to start preparing for DSA to crack the interviews, from where to get the quality learning resources, what should be the preparation strategy,* and many others, right…??

So, the one-stop solution is **GeeksforGeeks DSA Self-Paced Course** with * Lifetime Access* is a complete package for you to learn and master all the Data Structures & Algorithms concepts from scratch and that too at your own pace!

### Course Details

This DSA Self Paced Course is specifically designed for beginners, whether it be **students or working professionals**, who want to learn the Data Structures and Algorithms concepts from **basic to the advanced level**. As it is a self-paced course, you can join it anytime with all of the content being available once you get enrolled and you can **finish it at your own decided speed**. This self-paced course has been divided into **8 weeks** where you will learn the basics of DSA and can practice questions & attempt the assessment tests from anywhere in the world. Furthermore, it will help you to prepare for interviews with top-notch companies like **Microsoft, Amazon, Adobe,** etc.

In this course, you will also learn algorithmic techniques for solving various problems with full flexibility of time. Also, there is no need for any prior knowledge of Data Structure and Algorithms for this course – however, if you have a basic knowledge of any programming language (C++ / Java), it will be quite helpful.

*Some of the prominent features of this course are provided below:**Mastering DSA from basic to advanced level**Solving problems which are asked in product-based companies**Solve problems in contests similar to coding round for SDE role**Premium video lectures by Sandeep Jain (Founder & CEO, GeeksforGeeks)**Track-based learning & Assessment tests**Quiz & Theory-based Learning**Lifetime access to the Course**Internship Opportunities at GeeksforGeeks**Access to GeeksforGeeks Job Portal**Course Completion Certificate trusted by top companies*

What else do you need…??

Moreover, the DSA Self Paced Course is being provided to you at **a discounted price of INR 2799/-**. Also, if you want to **add on the doubt assistance facility** in this course, you’ll be required to pay an additional amount of **INR 1499 only**. The Doubt Assistance facility will be valid for the complete 6 months from the course registration. You can directly register yourself for the course by following the below-mentioned steps:

**Step-1:**Visit the official page of the**DSA Self-Paced Course**.**Step-2:**Then, Click on the**Signup Button**and enter the required details in the form such as name, contact number, etc.**Step-3:**After signing up, you need to make the payment by clicking the**“Pay Now”**button.**Step-4:**Then you’ll get successfully registered for the course and will be able to access the course content.

**Note:** In case of any query, you can directly contact us at *geeks.classes@geeksforgeeks.org *

### Course Content

The content that will be provided in this DSA Self Paced Course is as follows:

**Introduction**– Learn from the basics, such as Analysis of Algorithms, Order of Growth, and much more.**Mathematics**– Learn Finding the number of digits in a number, Arithmetic, and Geometric Progressions, Quadratic Equations, Mean and Median, and much more.**Bit Magic**– Bitwise Operators in C++ and Java and many practice problems.**Recursion**– Introduction to Recursion, Applications of Recursion, Writing base cases in Recursion, and much more.**Arrays**– Introduction and Advantages, Types of Arrays, Operations on Arrays, and much more.**Searching**– Binary Search Iterative and Recursive, Binary Search and various associated problems(With Video Solutions) and much more.**Sorting**– Implementation of C++ STL sort() function in Arrays and Vectors, Sorting in Java, Arrays.sort() in Java, Collection.sort() in Java and much more.**Matrix**– Introduction to Matrix in C++ and Java, Multidimensional Matrix, Pass Matrix as Argument, Printing matrix in a snake pattern, and much more.**Hashing**– Introduction and Time complexity analysis, Application of Hashing, Discussion on Direct Address Table, and much more.**Strings**– Discussion of String DS, Strings in CPP, Strings in Java, Problems(With Video Solutions), and much more.**Linked List**– Introduction, Doubly Linked List, Circular Linked List, Loop Problems, and much more.**Stack**– Understanding the Stack data structure, Applications of Stack, Implementation of Stack in Array and Linked List, and much more.**Queue**– Introduction and Application, Implementation of the queue using array and LinkedList, and much more.**Deque**– Introduction and Application, Implementation in C++ STL and Java and Problems(With Video Solutions), and much more.**Tree**– Introduction, Implementation in various Transversals, and much more.**Binary Search Tree**– Background, Introduction and Application, Implementation of Search in BST, Insertion in BST, and much more.**Heap**– Introduction & Implementation, Binary Heap, Heap Sort, and much more.**Graph**– Introduction to Graph, Graph Representation, Breadth-First Search, and much more.**Greedy**– Introduction, Activity Selection Problem, Fractional Knapsack, and much more.**Backtracking**– Concepts of Backtracking, Rat In a Maze, N Queen Problem, Sudoku Problem, and much more.**Dynamic Programming**– Introduction, Dynamic Programming, Problems(With Video Solutions), and much more**Trie**– Introduction, Count Distinct Rows in a Binary Matrix, and much more**Segment Tree**– Introduction, Construction, Range Query, Update Query, and much more**Disjoint Set**– Introduction, Find and Union Operations, Union by Rank, Path Compression, and**much more**

Check out the detailed topic-wise syllabus for the DSA Self-Paced Course fromhere.

### Frequently Asked Questions (FAQs)

**Q-1. Is this a language-specific course?**

**Ans.** Yes, the course is only in C++ & Java. In case you are not familiar with these languages, you may join one of the free courses, Fork CPP and Fork Java to best utilize this course.

**Q-2. Do we have doubt support in this program?**

**Ans.** You may get the additional feature of doubt support. While purchasing this course, click on “Add to Cart” for Doubt Support & Assistance.

**Q-3. How can I access contest solutions?**

**Ans.** Contest solutions are available in Video mode in the contest section itself.

**Q-4. Will the course content be available after the course end date?**

**Ans.** Yes, the Courses content comes with lifetime validity.

**Q-5. How long should one student take to complete the course?**

**Ans.** Although the course comes with lifetime validity, the average time that a student takes to complete it is 2 months.

*Hence, if you’re wishing to learn DSA to crack the interviews and get into your dream job – then without giving a second thought, you should definitely opt for this enriching ***DSA Self Paced Course***!*