C语言 | Leetcode C语言题解之第557题反转字符串中的单词III

题目:

题解:

cpp 复制代码
char* reverseWords(char* s) {
    int length = strlen(s);
    char* ret = (char*)malloc(sizeof(char) * (length + 1));
    ret[length] = 0;
    int i = 0;
    while (i < length) {
        int start = i;
        while (i < length && s[i] != ' ') {
            i++;
        }
        for (int p = start; p < i; p++) {
            ret[p] = s[start + i - 1 - p];
        }
        while (i < length && s[i] == ' ') {
            ret[i] = ' ';
            i++;
        }
    }
    return ret;
}
相关推荐
星轨初途10 分钟前
《数据结构二叉树之堆 —— 优先队列与排序的高效实现(2)(下)》
c语言·开发语言·数据结构·经验分享·笔记·性能优化
Shylock_Mister20 分钟前
ARM与x86交叉编译实战排错指南
linux·c语言·arm开发
高山有多高1 小时前
堆应用一键通关: 堆排序 +TOPk问题的实战解析
c语言·数据结构·c++·算法
1白天的黑夜11 小时前
递归-二叉树中的剪枝-814.二叉树剪枝-力扣(LeetCode)
c++·leetcode·剪枝·递归
程序猿追1 小时前
Ascend C编程范式总结:与CUDA的异同对比
c语言·开发语言·算法
前进之路92 小时前
Leetcode每日一练--47
数据结构·算法·leetcode
晨非辰3 小时前
【数据结构初阶系列】归并排序全透视:从算法原理全分析到源码实战应用
运维·c语言·数据结构·c++·人工智能·python·深度学习
松涛和鸣8 小时前
11.C 语言学习:递归、宏定义、预处理、汉诺塔、Fibonacci 等
linux·c语言·开发语言·学习·算法·排序算法
Miraitowa_cheems10 小时前
LeetCode算法日记 - Day 106: 两个字符串的最小ASCII删除和
java·数据结构·算法·leetcode·深度优先
小白程序员成长日记10 小时前
2025.11.12 力扣每日一题
算法·leetcode·职场和发展