✌粤嵌—2024/4/15—汇总区间

代码实现:

cpp 复制代码
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
char** summaryRanges(int* nums, int numsSize, int *returnSize) {
    char **res = malloc(sizeof(char*) * numsSize);
    *returnSize = 0;
    int i, j;
    for (i = 0; i < numsSize; i++) { // i: 区间左边第一个
        for (j = i + 1; j < numsSize; j++) { // j-1:区间右边第一个
            if (nums[j] != nums[j - 1] + 1) {
                break;
            }
        }
        // [i...j-1]
        char *ret = malloc(sizeof(char) * (25));
        sprintf(ret, "%d", nums[i]);
        if (i != j - 1) {
            sprintf(ret + strlen(ret), "->");
            sprintf(ret + strlen(ret), "%d", nums[j - 1]);
        }
        ret[strlen(ret)] = '\0';
        res[(*returnSize)++] = ret;
        i = j - 1;
    }
    return res;
}
相关推荐
编程绿豆侠11 小时前
力扣HOT100之栈:394. 字符串解码
java·算法·leetcode
记得早睡~11 小时前
leetcode73-矩阵置零
数据结构·leetcode·矩阵
爱coding的橙子12 小时前
每日算法刷题Day27 6.9:leetcode二分答案2道题,用时1h20min
算法·leetcode·职场和发展
圈圈编码18 小时前
LeetCode Hot100刷题——合并两个有序链表
java·数据结构·算法·leetcode·链表
岁忧18 小时前
LeetCode 高频 SQL 50 题(基础版)之 【高级字符串函数 / 正则表达式 / 子句】· 下
sql·leetcode·正则表达式
不7夜宵1 天前
力扣热题100 k个一组反转链表题解
算法·leetcode·链表
蒟蒻小袁1 天前
力扣面试150题--课程表
算法·leetcode·面试
AL流云。1 天前
【优选算法】分治
数据结构·算法·leetcode·排序算法