Practice Arena

Python Coding Challenges

Write real Python in the browser. Instant feedback. From beginner to expert.

925 challenges 556 easy 323 medium 46 hard
Recursion & Backtracking easy

Permutation Generator

Write a function that returns all permutations of a list of distinct integers.

recursion backtracking permutations
+10 pts 15m
Recursion & Backtracking medium

Combination Generator

Write a recursive function that returns all combinations of length k from a list of distinct integers.

recursion backtracking combinations
+25 pts 25m
Recursion & Backtracking medium

Permutations II

Return all distinct permutations of a list of integers that may include duplicates.

permutations backtracking deduplication
+25 pts 25m
Recursion & Backtracking medium

Subsets

Return all subsets (the power set) of a list of distinct integers.

recursion backtracking subsets
+20 pts 25m
Recursion & Backtracking medium

Subsets II

Given a collection of integers that might contain duplicates, return all possible unique subsets.

subsets backtracking deduplication
+25 pts 30m
Recursion & Backtracking hard

Partition to k subsets

Determine if an array of positive integers can be partitioned into k subsets of equal sum using backtracking.

backtracking recursion partition
+40 pts 35m
Recursion & Backtracking medium

Partition Equal Subset Sum (Backtracking)

Write a function that uses backtracking to decide if a list of positive integers can be partitioned into two subsets with equal sum.

backtracking subset-sum partition
+25 pts 25m
Recursion & Backtracking medium

Combination Sum

Given a list of distinct positive integers and a target, return all unique combinations that sum to the target.

backtracking recursion combinations
+25 pts 30m

Showing 1–8 of 8 challenges · Recursion & Backtracking

Recursion & Backtracking — Python coding challenges

What you will find here

This page lists recursion & backtracking challenges — real Python problems you solve in the browser IDE with instant test feedback. Each challenge includes a clear brief, starter code, and automated checks.

Challenges vs tutorials and quizzes

Challenges test what you can build under constraints. For guided teaching, use our Python tutorials. For quick checks, try quizzes or copy snippets from code samples.