题解 | #奶牛喂养时间#

奶牛喂养时间

https://www.nowcoder.com/practice/db2c7c52df0449b49b36e7fe5364f521

题目考察的知识点:贪心之合并数组

题目解答方法的文字分析:先将intervals进行排序,定义一个变量prev,然后遍历,如果prev[1]>=intervals[i],则合并这两个区间,否则,插入到输出的变量中,更新prev。

本题解析所用的编程语言:c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param intervals int整型vector<vector<>> 
     * @return int整型vector<vector<>>
     */
    vector<vector<int> > mergeTimeIntervals(vector<vector<int>>& intervals) {
        // write code here
        vector<vector<int>> result;
        sort(intervals.begin(), intervals.end());
        vector<int> prev = intervals[0];
        for(int i=1; i<intervals.size(); i++)
        {
            vector<int> cur = intervals[i];
            if(prev[1] >= cur[0])
            {
                prev[1] = max(prev[1], cur[1]);
            }
            else
            {
                result.push_back(prev);
                prev = cur;
            }
        }
        result.push_back(prev);
        return result;
    }
};

全部评论

相关推荐

10-05 23:02
东北大学 Java
我说句实话啊:那时候看三个月培训班视频,随便做个项目背点八股,都能说3 40w是侮辱价
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务