Minimum Difference Between Largest and Smallest Value in Three Moves
MediumArrayGreedySorting
Solution
export function minDifference(nums: number[]): number {
const n = nums.length;
if (n < 5) {
return 0;
}
nums.sort((a, b) => a - b);
return Math.min(
nums[n - 1] - nums[3],
nums[n - 2] - nums[2],
nums[n - 3] - nums[1],
nums[n - 4] - nums[0],
);
}
Complexity
- Time:
O(N * logN)
- Space:
O(N)
(정렬 알고리즘에 따른 공간 복잡도)