56.合并区间

  • 对于关于数组的内容可以先考虑排序
  • 然后特点在于这个题更新List中的值,这是面向对象与引用很好的解释
  • 对于对象的引用我们的操作可以直接操作对应的堆的内存中的数据进行修改。
  • @author jhc
	public class Solution1 {
		public static List<Interval> merge(List<Interval> intervals){
			if(intervals == null) return null;
			if(intervals.size() < 2 ) return intervals;
			Collections.sort(intervals,new Comparator<Interval>(){
				public int compare(Interval o1,Interval o2){
					return o1.start - o2.start;
				}
			});
			List<Interval> result = new ArrayList<Interval>();
			Interval prev = null;
			for(Interval item : intervals){
				if(prev == null || prev.end < item.start){
					result.add(item);//重点!
					prev = item;//重点
				}else if(prev.end < item.end){
					prev.end = item.end;
				}
			}
			return result;
		}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值