栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

合并重叠间隔

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

合并重叠间隔

Ideone.java:

import java.util.*;public class Ideone{       public static void main (String[] args) throws java.lang.Exception    {        ArrayList<Interval> x = new ArrayList<>();        x.add(new Interval(1, 3));        x.add(new Interval(2, 6));        x.add(new Interval(8, 10));        x.add(new Interval(15, 18));        x.add(new Interval(17, 20));        x = merge(x);        for(Interval i : x)        { System.out.println(i.getStart() + " " + i.getEnd());        }    }    public static ArrayList<Interval> merge(ArrayList<Interval> intervals) {        if(intervals.size() == 0 || intervals.size() == 1) return intervals;        Collections.sort(intervals, new IntervalComparator());        Interval first = intervals.get(0);        int start = first.getStart();        int end = first.getEnd();        ArrayList<Interval> result = new ArrayList<Interval>();        for (int i = 1; i < intervals.size(); i++) { Interval current = intervals.get(i); if (current.getStart() <= end) {     end = Math.max(current.getEnd(), end); } else {     result.add(new Interval(start, end));     start = current.getStart();     end = current.getEnd(); }        }        result.add(new Interval(start, end));        return result;    }}class Interval {    private int start;    private int end;    Interval() {        start = 0;        end = 0;    }    Interval(int s, int e)     {        start = s;        end = e;    }    public int getStart() {        return start;    }    public int getEnd() {        return end;    }}class IntervalComparator implements Comparator<Interval>{    public int compare(Interval i1, Interval i2)    {        return i1.getStart() - i2.getStart();    }}
  • main
    方法在
    public class Ideone
  • Interval
    IntervalComparator
    只是内部类

输出:

1 68 1015 20


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/415822.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号