LeetCode—1200

Approach

# 排序完之後先找斜率最小值,接著比較相鄰元素符合最小斜率的組合

Time Complexity

O(nlogn)

Space Complexity

O(n)

Code

class Solution {
public:
    vector<vector<int>> minimumAbsDifference(vector<int>& arr) {
        int minDiff = INT_MAX;
        vector<vector<int>> ans;

        sort(arr.begin(), arr.end());
        
        for (int i = 0 ; i < arr.size() - 1 ; i++) {
            minDiff = min(minDiff, arr[i + 1] - arr[i]);
        }

        for (int i = 0 ; i < arr.size() - 1 ; i++) {
            if (arr[i + 1] - arr[i] == minDiff) {
                ans.push_back({arr[i], arr[i + 1]});
            }
        }

        return ans;
    }
};