給出乙個無重疊的按照區間起始端點排序的區間列表。
在列表中插入乙個新的區間,你要確保列表中的區間仍然有序且不重疊(如果有必要的話,可以合併區間)。
樣例
插入區間[2, 5] 到 [[1,2], [5,9]],我們得到 [[1,9]]。
插入區間[3, 4] 到 [[1,2], [5,9]],我們得到 [[1,2], [3,4], [5,9]]。
/**
* definition of interval:
* public classs interval
*/class solution
int pos =0;
//遍歷迴圈list
for(int i=0;iif(cur.end//如果插入的新區間比當前區間要大,那麼先add當前區間到result中,並將標記位後移一位
result.add(cur);
pos++;
}else
if(cur.start>newinterval.end)else
}//利用add方法在指定的pos插入newinterval
result.add(pos,newinterval);
return result;
}}
總結
這種型別的題目可以自己拿出筆多畫一畫看看到底有多少種情況
LintCode 30 插入區間
給出乙個無重疊的按照區間起始端點排序的區間列表。在列表中插入乙個新的區間,你要確保列表中的區間仍然有序且不重疊 如果有必要的話,可以合併區間 插入區間 2,5 到 1,2 5,9 我們得到 1,9 插入區間 3,4 到 1,2 5,9 我們得到 1,2 3,4 5,9 無直接將數從小到大存到陣列,接...
LintCode 30 插入區間
給出乙個無重疊的按照區間起始端點排序的區間列表。在列表中插入乙個新的區間,你要確保列表中的區間仍然有序且不重疊 如果有必要的話,可以合併區間 樣例 插入區間 2,5 到 1,2 5,9 我們得到 1,9 插入區間 3,4 到 1,2 5,9 我們得到 1,2 3,4 5,9 這道題比較考驗邏輯能力,...
lintcode 30 插入區間
給出乙個無重疊的按照區間起始端點排序的區間列表。在列表中插入乙個新的區間,你要確保列表中的區間仍然有序且不重疊 如果有必要的話,可以合併區間 插入區間 2,5 到 1,2 5,9 我們得到 1,9 插入區間 3,4 到 1,2 5,9 我們得到 1,2 3,4 5,9 這道題共有三種情況 1.新區間...