Bucket-Sort
Bucket Sort and the Pigeonhole Principle
·2 mins
Algorithm
Bucket-Sort
Pigeonhole-Principle
Sorting
Split the value range into n - 1 buckets; the largest gap can never fall inside one bucket, so keeping each bucket’s minimum and maximum finds the maximum adjacent difference in linear time
LeetCode 220: Contains Duplicate III
·3 mins
LeetCode
Hard
Sliding-Window
Bucket-Sort
Ordered-Set
Sorting
Array
LeetCode 220 note: with bucket size valueDiff + 1, two numbers in one bucket always qualify, so only the two neighboring buckets need checking; the window keeps the latest indexDiff numbers, so each bucket holds at most one
LeetCode 164: Maximum Gap
·3 mins
LeetCode
Medium
Bucket-Sort
Radix-Sort
Sorting
Array
LeetCode 164 note: the maximum gap is at least the average gap, so with buckets no wider than that it lies between consecutive non-empty buckets; keep each bucket’s min and max for O(n)