Closest Pair
Learn how to solve the 'Closest Pair' problem. This detailed resource details brute force and optimized approaches.
Problem Statement
Write a function closest_pair(arr) that takes an unsorted array of integers arr and returns a tuple of two integers (x, y) from the array that have the minimum absolute difference. The returned tuple must be sorted such that x <= y. If there are multiple pairs with the same minimum difference, return the one with the smaller x value (and if those are the same, the smaller y value).
- •2 <= len(arr) <= 10^5
- •-10^9 <= arr[i] <= 10^9
Examples
closest_pair([4, 9, 1, 32, 13])
(1, 4)
The difference between 1 and 4 is 3, which is the minimum difference possible between any two elements in the array.
closest_pair([12, 15, 17, 20, 25])
(15, 17)
The difference between 15 and 17 is 2, which is the minimum difference possible.
Need a Hint?
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.