Merge Intervals MoreAdd LessGet
严氏北美IT公司面试真题汇总和解答论坛 :: LinkedIn公司面试真题: 注册用户可以看到隐藏题目:2017年下半年上机题,8 9 10三个月的onsite面试真题 :: 合并两个XX系列(基础+核心+高频题)
Page 1 of 1
Merge Intervals MoreAdd LessGet
List<Interval> intervals=new ArrayList<>();
void add(int start, int end){
intervals.add(new Interval(start,end));
}
int get(){
if(intervals.isEmpty())return 0;
Collections.sort(intervals,new Comparator<Interval>(){
@Override
public int compare(Interval a,Interval b){
return a.start-b.start;
}
});
int coverLength=0;
Interval prev=intervals.get(0);
for(int i=1;i<intervals.size();i++){
Interval curInterval=intervals.get(i);
if(prev.end>curInterval.start){
prev.end=Math.max(prev.end, curInterval.end);
}else{
coverLength+=(prev.end-prev.start);
prev=curInterval;
}
}
coverLength+=(prev.end-prev.start);
return coverLength;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
MergeIntervalsMoreAdd intervals = new MergeIntervalsMoreAdd();
intervals.add(10, 12);
intervals.add(3, 6);
intervals.add(8, 9);
intervals.add(1, 5);
int len = intervals.get();
System.out.println(len);
}
void add(int start, int end){
intervals.add(new Interval(start,end));
}
int get(){
if(intervals.isEmpty())return 0;
Collections.sort(intervals,new Comparator<Interval>(){
@Override
public int compare(Interval a,Interval b){
return a.start-b.start;
}
});
int coverLength=0;
Interval prev=intervals.get(0);
for(int i=1;i<intervals.size();i++){
Interval curInterval=intervals.get(i);
if(prev.end>curInterval.start){
prev.end=Math.max(prev.end, curInterval.end);
}else{
coverLength+=(prev.end-prev.start);
prev=curInterval;
}
}
coverLength+=(prev.end-prev.start);
return coverLength;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
MergeIntervalsMoreAdd intervals = new MergeIntervalsMoreAdd();
intervals.add(10, 12);
intervals.add(3, 6);
intervals.add(8, 9);
intervals.add(1, 5);
int len = intervals.get();
System.out.println(len);
}
Similar topics
» Merge Intervals MoreGet LessAdd
» Merge Two Sorted Array
» Merge Two Sorted List
» Merge K Sorted Array
» Merge K Sorted Arraylist
» Merge Two Sorted Array
» Merge Two Sorted List
» Merge K Sorted Array
» Merge K Sorted Arraylist
严氏北美IT公司面试真题汇总和解答论坛 :: LinkedIn公司面试真题: 注册用户可以看到隐藏题目:2017年下半年上机题,8 9 10三个月的onsite面试真题 :: 合并两个XX系列(基础+核心+高频题)
Page 1 of 1
Permissions in this forum:
You cannot reply to topics in this forum
|
|