Insert New Row
Implement a function that inserts a new row into a 2D list at a specified index.
Insert into a Sorted List
Implement a function that inserts a value into a sorted list at the correct position using binary search.
Insertion Sort
Implement insertion sort that sorts a list in-place and returns the same list.
Bucket Sort
Implement bucket sort to sort a list of floating-point numbers in the range [0,1).
Shell Sort
Implement Shell sort, an in-place comparison sort that generalizes insertion sort, using a gap sequence that shrinks by half each pass.
Trie Insert and Search
Implement a Trie and a scenario runner that executes insert/search/prefix operations.
Insert into BST
Implement insertion into a Binary Search Tree while maintaining BST properties.
Queue Reconstruction by Height
Given shuffled pairs of (height, number_of_taller_people_in_front), reconstruct the original queue order.
Search Insert Position
Return the index where a target should be inserted into a sorted list to maintain order.
Showing 9 challenges
Guide: free Python coding challenges
Practice Python by solving problems
PythonSkillset challenges are hands-on coding exercises from beginner to advanced. Open a challenge, read the problem, write Python in the split-pane editor, and run tests with Pyodide — no install required.
How to use the arena
- Pick a category — basics, algorithms, strings, and more
- Open a challenge, read the statement, and edit the starter code
- Run tests, fix failures, then try a related quiz or tutorial lesson
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.