This course is a complete package that helps you learn Data Structures and Algorithms from basic to an advanced level. The course curriculum has been divided into 10 weeks where you can practice questions & attempt the assessment tests according to your own pace. The course offers you a wealth of programming challenges that will help you to prepare for interviews with top-notch companies like Microsoft, Amazon, Adobe etc.
You will learn algorithmic techniques for solving various problems with full flexibility of time. With this course, you can study at your own pace and need not hurry or puzzle yourself.
This course does not require any prior knowledge of Data Structure and Algorithms, but a basic knowledge of any programming language ( C++ / Java) will be helpful.
200+ algorithmic coding problems
Lifetime access to the Course
Track-based learning
Weekly assessment tests
Premium Lecture videos by Mr. Sandeep Jain (CEO & Founder, GeeksforGeeks)
Course Completion Certificate trusted by top universities and companies
Internship Opportunities at GeeksforGeeks
Access to the GeeksforGeeks Jobs portal
Learn Data Structures and Algorithms from basic to advanced level
Learn Topic-wise implementation of different Data Structures & Algorithms
Improve your problem-solving skills to become a stronger developer
Develop your analytical skills on Data Structures and use them efficiently
Solve problems asked in product-based companies’ interviews
Solve problems in contests similar to coding round for SDE role
Analysis of Algorithm
Background analysis through a Program and its functions.
Order of Growth
A mathematical explanation of the growth analysis through limits and functions.
A direct way of calculating the order of growth
Asymptotic Notations
Best, Average and Worst case explanation through a program.
Big O Notation
Graphical and mathematical explanation.
Calculation
Applications at Linear Search
Omega Notation
Graphical and mathematical explanation.
Calculation.
Theta Notation
Graphical and mathematical explanation.
Calculation.
Analysis of common loops
Single, multiple and nested loops
Analysis of Recursion
Various calculations through Recursion Tree method
Space Complexity
Basic Programs
Auxiliary Space
Space Analysis of Recursion
Space Analysis of Fibonacci number
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
Mathematics
Count Digits
Palindrome Numbers
Factorial of Numbers
GCD of Two Numbers
LCM of Two Numbers
Check for Prime
Prime Factors
Sieve of Eratosthenes
Computing Power
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
Bitwise Operators in C++
Operation of AND, OR, XOR operators
Operation of Left Shift, Right Shift and Bitwise Not
Bitwise Operators in Java
Operation of AND, OR
Operation of Bitwise Not, Left Shift
Operation of Right Shift and unsigned Right Shift
Problem(With Video Solutions): Check Kth bit is set or not
Method 1: Using the left Shift.
Method 2: Using the right shift
Problem(With Video Solutions): Count Set Bits
Method 1: Simple method
Method 2: Brian and Kerningham Algorithm
Method 3: Using Lookup Table
Problems(With Video Solutions):
To check whether a number is a power of 2 or not
Odd occurrences in an array.
Two numbers having odd occurrences in an array.
Generate power set using bitwise operators.
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
Introduction to Recursion
Applications of Recursion
Writing base cases in Recursion
Factorial
N-th Fibonacci number
Various problems on Recursion(With Video Solutions)
Print n to 1
Print 1 to n
Tail Recursion
Checking Palindrome
Sum of digits
Rod cutting
Subsets of a set
Tower of Hanoi Problem
Josephus Problem
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
Introduction and Advantages
Types of Arrays
Fixed-sized array
Dynamic-sized array
Operations on Arrays
Searching
Insertions
Deletion
Arrays vs other DS
Reversing - Explanation with complexity
Problems(With Video Solutions)
Check if Sorted
Left Rotation of the array by D places
Leaders in an Array
Maximum Difference Problem
Frequencies in Sorted Array
Stock Buy and Sell Problem
Trapping Rainwater Problem
Maximum Consecutive 1s
Maximum Subarray Sum
Longest Even-Odd Subarray
Maximum Circular sum subarray.
Majority Element
Minimum Consecutive Flips
Sliding Window Technique
Prefix Sum Technique
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
Binary Search Iterative and Recursive
Binary Search and various associated problems(With Video Solutions)
Index of First Occurence in Sorted Array
Index of Last Occurence in Sorted Array
Count of occurrences of x in sorted element
Count of 1s in a binary sorted array
Find an element in sorted and rotated array
Peak element
Find an element in an infinite sized sorted array
The square root of an integer
Two Pointer Approach Problems(With Video Solutions)
Find pair in an unsorted array which gives sum X
Find pair in a sorted array which gives sum X
Find triplet in an array which gives sum X
Problems(With Video Solutions)
Median of two sorted arrays
Majority Element
Practice Problems
This track contains many practice problems for the users which are considered important and must-do as far as Data Structure and Algorithm is concerned.
What does Self-Paced mean?
You can join the course anytime. All of the content will be available once you get enrolled. You can finish it at your own decided speed.
Does the course include programming questions?
Yes, the course focuses on DS & Algo with a mix of theoretical lectures and programming questions.
Do we have doubt support in this program?
No, This program doesn't have doubt solving support. You may register for DSA- self-paced with Doubt solving.
Is this a language-specific course?
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.
What do I learn if I am a Python Programmer?
If you are a Python programmer, you get the following.
1) The theory part of videos, algorithms in videos. Note video explanations of implementations are specific to C++ and Java only
2) Practice Questions will be in Python
It is recommended to prepare yourself with Fork Python if you are beginning with Python
How can I access contest solutions?
Contest solutions are available in Video mode in the contest section itself.
When can i access the video solution of Contest problems?
Once you've appeared in the online contest you can access the solutions.
How can I register for the course?
You need to sign up for the course. After signing up, you need to pay when the payment link opens.
What type of certificate will be offered in this program
Once the course is completed. You'll be getting a course completion certificate.
When can I make the payment for the course?
The payment link will be available on the course page.
Will the course content be available after the course end date?
Yes, the Courses content come with a lifetime validity
Is there a sample video to see how are the course videos?
Yes, please see this video.
Can I make the payment through PayPal?
Yes. Mail us with your details at geeks.classes@geeksforgeeks.org.
How long should one student take to complete the course?
Although the course comes with lifetime validity, the average time that a student takes to complete it is 2 months.
Batch | Date | Type | Register |
---|---|---|---|
DSA-self paced | Active | Online Classes |