在哪些网站上做推广好,湖南长沙网站建,wordpress对网站排名,好的平面设计作品网站双指针法
思路#xff1a; 用待插入区间左右边界初始化双指针 left 和 right#xff1b;遍历待归并区间#xff1a; 如果元素整体边界在 [left, right] 左侧#xff08;item[1] left#xff09;#xff0c;则将给元素插入结果数组中#xff1b;如果元素整体边界在…双指针法
思路 用待插入区间左右边界初始化双指针 left 和 right遍历待归并区间 如果元素整体边界在 [left, right] 左侧item[1] left则将给元素插入结果数组中如果元素整体边界在 [left, right] 右侧 item[0] right则将 {left, right} 区间插入结果数组如果在 [left, right] 之间更新 left 和 right 左者更左右者更右注意遍历完之后 {left, right} 是否插入结果数组中
class Solution {
public:vectorvectorint insert(vectorvectorint intervals, vectorint newInterval) {int left newInterval[0];int right newInterval[1];bool mark false;std::vectorstd::vectorint result;for (const auto item: intervals) {if (item[0] right) {if (!mark) {result.push_back({left, right});mark true;}result.push_back(item);} else if (item[1] left) {result.push_back(item);} else {left std::min(left, item[0]);right std::max(right, item[1]);}}if (!mark) {result.push_back({left, right});}return result;}
};