719. Find K-th Smallest Pair Distance
2018-03-08 23:19
323 查看
Given an integer array, return the k-th smallest distance among all the pairs. The distance of a pair (A, B) is defined as the absolute difference between A and B.
Example 1:
Note:
2 <= len(nums) <= 10000.
0 <= nums[i] < 1000000.
1 <= k <= len(nums) * (len(nums) - 1) / 2.
Example 1:
Input: nums = [1,3,1] k = 1 Output: 0 Explanation: Here are all the pairs: (1,3) -> 2 (1,1) -> 0 (3,1) -> 2 Then the 1st smallest distance pair is (1,1), and its distance is 0.
Note:
2 <= len(nums) <= 10000.
0 <= nums[i] < 1000000.
1 <= k <= len(nums) * (len(nums) - 1) / 2.
class Solution { public int smallestDistancePair(int[] nums, int k) { Arrays.sort(nums); int lo = 0; int hi = nums[nums.length - 1] - nums[0]; while (lo < hi) { int mi = (lo + hi) / 2; int count = 0, left = 0; for (int right = 0; right < nums.length; ++right) { while (nums[right] - nums[left] > mi) left++; count += right - left; } //count = number of pairs with distance <= mi if (count >= k) hi = mi; else lo = mi + 1; } return lo; } }
相关文章推荐
- 719. Find K-th Smallest Pair Distance
- LWC 56:719. Find K-th Smallest Pair Distance
- leetcode 719. Find K-th Smallest Pair Distance
- leetcode 719. Find K-th Smallest Pair Distance 第k小的绝对距离 + 暴力计算真棒
- LEETCODE: 719 Find K-th Smallest Pair Distance
- 算法第15周Find K-th Smallest Pair Distance[hard]
- 719. Find K-th Smallest Pair Distance
- LeetCode719. Find K-th Smallest Pair Distance (hard)
- Find K-th Smallest Pair Distance:查找数组元素中差值第K大的两个元素的差值
- LeetCode Weekly Contest 56 Find K-th Smallest Pair Distance
- Leet 4000 Code Find K-th Smallest Pair Distance
- LWC 72: 786. K-th Smallest Prime Fraction
- give two sorted array, find the k-th smallest element of union of A and B
- Project Euler 44: Find the smallest pair of pentagonal numbers whose sum and difference is pentagonal.
- Leetcode: K-th Smallest in Lexicographical Order
- Weekly Contest 72 leetcode 786. K-th Smallest Prime Fraction
- leetcode#786. K-th Smallest Prime Fraction
- k pair of min jaccard distance
- k-th Smallest Element of Two Sorted Arrays
- Find the k-th smallest element