Skip to the content.

1200. Minimum Absolute Difference

Code

class Solution {
public:
  std::vector<std::vector<int>> minimumAbsDifference(std::vector<int> &arr) {
    std::vector<std::vector<int>> rtn;
    std::sort(arr.begin(), arr.end());
    int min_value = std::abs(arr[1] - arr[0]);
    for (int i = 2; i < arr.size(); ++i) {
      int cur = std::abs(arr[i] - arr[i - 1]);
      min_value = std::min(min_value, cur);
    }
    for (int i = 1; i < arr.size(); ++i) {
      if (std::abs(arr[i] - arr[i - 1]) == min_value) {
        rtn.emplace_back(std::vector<int>{arr[i - 1], arr[i]});
      }
    }
    return rtn;
  }
};

Result

Success

Runtime: 64 ms, faster than 92.74% of C++ online submissions for Minimum Absolute Difference.

Memory Usage: 32 MB, less than 94.05% of C++ online submissions for Minimum Absolute Difference.