排序

 

 基础不太行,重写比较方法

class Solution {
    public int[][] merge(int[][] intervals) {
        Arrays.sort(intervals,new Comparator<int []>(){
            public int compare(int[] a,int[] b){
                return a[0] - b[0];
            }
        });

        List<int[]> res = new ArrayList<>();
        int ran = 0;
        for(int i = 0; i < intervals.length;i++){
            int sta = intervals[i][0];
            int end = intervals[i][1];
            if(ran == 0 || res.get(ran-1)[1] < sta){
                res.add(intervals[i]);
                ran++;
            }else{
                res.get(ran-1)[1] = Math.max(res.get(ran-1)[1],end);
            }
        }
        return res.toArray(new int[ran][]);
    }
}
Arrays.sort(intervals,new Comparator<int []>(){
            public int compare(int[] a,int[] b){
                return a[0] - b[0];
            }
        });

这一段重写了数组的排序方法

list.toArray(new int[][]);

集合转换为数组类型

posted @ 2021-09-05 14:44  K峰  Views(56)  Comments(0)    收藏  举报