Given an array of distinct integers arr, find all pairs of elements with the minimum absolute difference of any two elements.

Return a list of pairs in ascending order(with respect to pairs), each pair [a, b] follows


	a, b are from arr
	a &lt; b
	b - a equals to the minimum absolute difference of any two elements in arr


&nbsp;
Example 1:

Input: arr = [4,2,1,3]
Output: [[1,2],[2,3],[3,4]]
Explanation: The minimum absolute difference is 1. List all pairs with difference equal to 1 in ascending order.

Example 2:

Input: arr = [1,3,6,10,15]
Output: [[1,3]]


Example 3:

Input: arr = [3,8,-10,23,19,-4,-14,27]
Output: [[-14,-10],[19,23],[23,27]]


&nbsp;
Constraints:


	2 &lt;= arr.length &lt;= 105
	-106 &lt;= arr[i] &lt;= 106


class Solution:
    def minimumAbsDifference(self, arr: List[int]) -> List[List[int]]:
        arr.sort()
        diff=float(inf)
        for i in range(0,len(arr)-1):
            if arr[i+1]-arr[i]<diff:
                diff=arr[i+1]-arr[i]
        lst=[]
        for i in range(0,len(arr)-1):
            if arr[i+1]-arr[i]==diff:
                lst.append([arr[i],arr[i+1]])
        return lst
class Solution {
    public List<List<Integer>> minimumAbsDifference(int[] arr) {
        List<List<Integer>> ans=new ArrayList<>();
        Arrays.sort(arr);
        int min=Integer.MAX_VALUE;
        for(int i=0;i<arr.length-1;i++){
            int diff=Math.abs(arr[i]-arr[i+1]);
            if(diff<min)
            {
            min=diff;
            }
        }
        for(int i=0;i<arr.length-1;i++){
            int diff=Math.abs(arr[i]-arr[i+1]);
            if(diff==min){
                 List<Integer> pair=new ArrayList<>(2);
                pair.add(arr[i]);
                pair.add(arr[i+1]);
                ans.add(pair);
            }
        }
        return ans;
    }
}
class Solution {
public:
    vector<vector<int>> minimumAbsDifference(vector<int>& arr) {
        sort(arr.begin(),arr.end());
        int diff=INT_MAX;
        for(int i=1;i<arr.size();i++){
            diff=min(diff,abs(arr[i]-arr[i-1]));
        }
        vector<vector<int>>v;
        for(int i=1;i<arr.size();i++){
            if(abs(arr[i]-arr[i-1])==diff){
                int a=min(arr[i],arr[i-1]);
                int b=max(arr[i],arr[i-1]);
                v.push_back({a,b});
            }  
        }
        return v;
    }
};
var minimumAbsDifference = function(arr) {
    arr.sort((a, b) => a - b)
    let minDif = Infinity
    let res = []

    for (let i = 0; i < arr.length - 1; i++) {
        let currDif = Math.abs(arr[i + 1] - arr[i])
        if (currDif < minDif) minDif = currDif
    }

    for (let i = 0; i < arr.length - 1; i++) {
        let dif = Math.abs(arr[i + 1] - arr[i])
        if (dif === minDif) {
            res.push([arr[i], arr[i + 1]])
        }
    }
    return res
};
Minimum Absolute Difference