鱼C论坛

 找回密码
 立即注册
查看: 1937|回复: 0

[学习笔记] leetcode 1200. Minimum Absolute Difference

[复制链接]
发表于 2019-9-23 00:05:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
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 < b
b - a equals to the minimum absolute difference of any two elements in arr
 

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]]
 

Constraints:

2 <= arr.length <= 10^5
-10^6 <= arr[i] <= 10^6
class Solution {
    public List<List<Integer>> minimumAbsDifference(int[] arr) {
        List<List<Integer>> res = new ArrayList<List<Integer>>();
        Arrays.sort(arr);
        
        int min = arr[1] - arr[0];
        int len = arr.length;
        for(int i =0 ; i <len - 1 ; i++){
            
                
            if( arr[i+1] -arr[i] < min) min = arr[i+1] -arr[i];
            
        }
        
        for(int i =0 ; i <len - 1 ; i++){
            
            List<Integer> list = new ArrayList<>();
            
                
            if( arr[i+1] -arr[i] ==  min) {

                
                list.add(arr[i]);
                list.add(arr[i+1]);
                
                    
            }
            if(list.size() == 2){
                res.add(list);
                list = new ArrayList<>();

            }
                
            
            if(list.size() == 2){
                    res.add(list);
                    list = new ArrayList<>();
                    
                }
                
        }
        
        return res;
    }
}

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-28 23:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表