Choose your language
Python DSA Course
More than 2 million students worldwide

Python DSA Course

Master every core data structure and algorithm you need to crack technical interviews and write high-performance Python code. This course takes you from Python fundamentals all the way through dynamic programming, graphs, and advanced structures. You'll solve real interview problems at every stage, building both speed and confidence. If you're serious about landing a software engineering role, this is where you start.

Dedika for businesses

What you will learn:

You'll build a complete foundation in Python-based data structures and algorithms, starting with syntax and complexity analysis and advancing through arrays, linked lists, trees, graphs, and dynamic programming. Each chapter introduces core concepts and then applies them directly to the problem patterns that appear most often in technical interviews. You'll implement every structure from scratch, analyze its performance, and practice recognizing which algorithm fits a given problem. Supplementary chapters cover backtracking, greedy strategies, bit manipulation, and advanced structures like Fenwick trees and segment trees. By the end, you'll have a documented GitHub portfolio and a proven framework for solving unfamiliar problems under interview conditions.

How you study in practice Python DSA Course

How you practice Python DSA Course

For companies that want to train their team

With Dedika for Business, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 35 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Python Foundations for DSA

  • Lesson 1 • Functions and Scope

    Defines reusable functions, default arguments, and variable scope rules. Functions are the primary unit of algorithm implementation in this course.

  • Lesson 2 • Built-in Collections Overview

    Surveys lists, tuples, dicts, and sets with their time complexities. Provides the practical container knowledge needed before custom structures are built.

  • Lesson 3 • Modules, Libraries, and I/O

    Introduces importing modules, using the standard library, and reading input for competitive-style problems. Prepares students for structured problem-solving workflows.

  • Lesson 4 • Python Syntax and Control Flow

    Covers variables, data types, conditionals, and loops as the baseline for all algorithm code. Establishes clean coding habits used throughout the course.

Chapter 2See details

Complexity Analysis and Big-O

  • Lesson 1 • Big-O, Big-Theta, and Big-Omega

    Defines the three asymptotic notations and their mathematical meaning. Students apply each notation to classify algorithm behavior precisely.

  • Lesson 2 • Measuring Algorithm Performance

    Introduces runtime measurement concepts and why theoretical analysis outperforms benchmarking alone. Sets the analytical mindset for every chapter that follows.

  • Lesson 3 • Analyzing Loops and Recursion

    Teaches systematic analysis of nested loops and recursive calls. Directly applicable to every sorting and searching algorithm in later chapters.

  • Lesson 4 • Space Complexity

    Distinguishes auxiliary space from total space and analyzes memory usage of data structures. Prepares students to make space-time trade-off decisions.

Chapter 3See details

Arrays, Strings, and Hashing

  • Lesson 1 • Two-Pointer and Sliding Window

    Introduces the two-pointer and sliding-window patterns for O(n) solutions on sorted or sequential data. Reduces brute-force O(n²) approaches significantly.

  • Lesson 2 • Hash Tables and Collision Handling

    Explains hash function design, collision resolution, and Python dict internals. Students implement custom hash maps and solve lookup problems in O(1).

  • Lesson 3 • Array Manipulation Techniques

    Covers in-place operations, prefix sums, and difference arrays for range queries. These patterns appear in the majority of interview-style problems.

  • Lesson 4 • String Processing Algorithms

    Covers substring search, anagram detection, and palindrome checks using efficient techniques. Builds string intuition needed for hashing and pattern matching.

Chapter 4See details

Linked Lists, Stacks, and Queues

  • Lesson 1 • Queue, Deque, and Priority Queue

    Implements FIFO queues, double-ended deques, and heap-based priority queues. Prepares students for BFS and scheduling algorithm problems.

  • Lesson 2 • Singly and Doubly Linked Lists

    Builds node-based linked list classes with insertion, deletion, and traversal. Establishes pointer manipulation skills used in trees and graphs later.

  • Lesson 3 • Stack Implementation and Applications

    Implements stacks using lists and linked lists, then applies them to parsing and evaluation problems. Stacks underpin recursion simulation and backtracking.

  • Lesson 4 • Linked List Problem Patterns

    Covers fast-slow pointers, reversal, and merge techniques on linked lists. These patterns recur in tree and graph traversal problems.

Chapter 5See details

Recursion and Sorting Algorithms

  • Lesson 1 • Recursion Fundamentals

    Defines base cases, recursive calls, and call-stack behavior with visual tracing. Correct recursion design is prerequisite for divide-and-conquer and backtracking.

  • Lesson 2 • Divide and Conquer Sorting

    Implements merge sort and quicksort with full recurrence analysis. Students understand partition strategies and stability trade-offs.

  • Lesson 3 • Searching Algorithms

    Implements binary search and its variants on sorted arrays and answer spaces. Binary search on the answer is a key pattern for optimization problems.

  • Lesson 4 • Linear and Hybrid Sorting

    Covers counting sort, radix sort, and bucket sort for non-comparison scenarios. Students identify when linear sorting outperforms comparison-based methods.

Chapter 6See details

Trees and Binary Search Trees

  • Lesson 1 • Tree Problem Patterns

    Covers path sum, lowest common ancestor, and diameter problems using recursion. These patterns appear frequently in technical interviews and system design.

  • Lesson 2 • Tries and Segment Trees

    Builds prefix tries for string search and segment trees for range queries. These specialized trees solve problems that BSTs and heaps cannot handle efficiently.

  • Lesson 3 • Balanced Trees and Heaps

    Introduces AVL and red-black tree balancing concepts and heap structure. Students understand when self-balancing trees are necessary for performance guarantees.

  • Lesson 4 • Binary Tree Fundamentals

    Defines tree terminology, node structure, and recursive traversal orders. Traversal patterns are the foundation for all tree-based algorithms.

  • Lesson 5 • Binary Search Tree Operations

    Implements BST insertion, deletion, and search with complexity analysis. BST properties enable efficient ordered data retrieval and range queries.

Chapter 7See details

Graphs and Graph Algorithms

  • Lesson 1 • Topological Sort and Cycle Detection

    Applies Kahn's algorithm and DFS-based topological sort to DAGs. Cycle detection and ordering are essential for dependency resolution problems.

  • Lesson 2 • Minimum Spanning Trees and Union-Find

    Implements Kruskal's and Prim's algorithms alongside the Union-Find structure. These tools solve network connectivity and clustering problems efficiently.

  • Lesson 3 • Shortest Path Algorithms

    Implements Dijkstra, Bellman-Ford, and Floyd-Warshall for weighted graphs. Students select the correct algorithm based on graph properties and constraints.

  • Lesson 4 • BFS and DFS Traversals

    Implements iterative BFS and recursive DFS with visited tracking. These two traversals underpin nearly every graph algorithm in this chapter.

  • Lesson 5 • Graph Representations

    Compares adjacency matrix, adjacency list, and edge list representations with trade-offs. Choosing the right representation directly impacts algorithm efficiency.

Chapter 8See details

Dynamic Programming

  • Lesson 1 • Classic DP Problem Patterns

    Solves knapsack, longest subsequence, and coin change problems as canonical DP templates. Mastering these templates accelerates solving novel DP problems.

  • Lesson 2 • DP Foundations and Memoization

    Defines overlapping subproblems and optimal substructure as DP prerequisites. Top-down memoization converts recursive solutions into efficient DP solutions.

  • Lesson 3 • Tabulation and Space Optimization

    Builds bottom-up DP tables and reduces space using rolling arrays. Space-optimized DP is critical for large-input constraints in competitive problems.

  • Lesson 4 • Interval and Grid DP

    Applies DP to interval merging and grid path problems with 2D state spaces. These patterns extend DP skills to matrix and range-based problem types.

  • Lesson 5 • Advanced DP Techniques

    Covers bitmask DP, digit DP, and DP on trees for complex state representations. These techniques handle combinatorial and hierarchical optimization problems.

Certification

Your valid completion certificate

This course is for you:

  • Computer science student: needs structured interview prep beyond classroom theory.

  • Self-taught developer: has project experience but lacks formal algorithmic training.

  • Career changer: moving into software engineering from a non-technical background.

  • Junior engineer: wants to qualify for mid-level roles requiring stronger technical depth.

  • Data analyst: expanding into engineering positions that demand algorithmic problem-solving skills.

  • Bootcamp graduate: ready to move past tutorials and tackle real interview challenges.

What our students say

Your classes are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of my interest without needing to switch platforms... I thank you for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can switch chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the presentation style and video transcription, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top trainings

FAQ

Who is Dedika?

Is the certificate valid in the United States?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course