Back to Practice Dashboard
DSA SectionEasy
Counting Sort
Learn how to solve the 'Counting Sort' problem. This detailed resource details brute force and optimized approaches.
Problem Statement
Easy
Write a function counting_sort(arr) that sorts a list of non-negative integers arr using the Counting Sort algorithm. You may assume that the elements are integers in a small range [0, k]. The function should return the sorted list.
Constraints
- •0 <= len(arr) <= 10^4
- •0 <= arr[i] <= 1000
Examples
Example 1
Input
arr = [4, 2, 2, 8, 3, 3, 1]
Output
[1, 2, 2, 3, 3, 4, 8]
Explanation
Frequencies of each element are counted, and cumulative counts are used to place elements in the sorted output array.
Need a Hint?
Analyze the input constraints. Try sorting first (O(n log n)) or using a hash map/set to track seen elements in O(n) time.
Edge Cases to Watch
- Empty list or null input variables
- Single item lists/arrays
- Extremely large input bounds causing integer or stack overflow
Ready to Solve?
Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.