码迷,mamicode.com
首页 > 其他好文 > 详细

【leetcode】56. 合并区间

时间:2020-12-16 12:28:04      阅读:3      评论:0      收藏:0      [点我收藏+]

标签:color   returns   als   void   call   ++   合并   ssi   size   

 

int cmp(const void*a, const void*b){
    return (*(int**)a)[0] > (*(int**)b)[0];
}
int** merge(int** intervals, int intervalsSize, int* intervalsColSize, int* returnSize, int** returnColumnSizes){
    int** arr = (int**)calloc(intervalsSize, sizeof(int*));
    *returnSize = 0;
    *returnColumnSizes = (int*)calloc(intervalsSize, sizeof(int));
    qsort(intervals, intervalsSize, sizeof(int*), cmp);
    for (int i = 0; i < intervalsSize; i++){
        if (i == intervalsSize - 1 || intervals[i][1] < intervals[i + 1][0]){
            arr[(*returnSize)] = (int*)calloc(2, sizeof(int*));
            arr[(*returnSize)][0] = intervals[i][0];
            arr[(*returnSize)][1] = intervals[i][1];
            (*returnColumnSizes)[(*returnSize)++] = 2;
        }
        else if (intervals[i][1] >= intervals[i + 1][0]){
            intervals[i + 1][0] = intervals[i][0];
            intervals[i + 1][1] = (intervals[i][1]>intervals[i + 1][1]) ? intervals[i][1] : intervals[i + 1][1];
        }
    }
    return arr;
}

 

【leetcode】56. 合并区间

标签:color   returns   als   void   call   ++   合并   ssi   size   

原文地址:https://www.cnblogs.com/ganxiang/p/14118336.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!