【C语言刷力扣】58.最后一个单词的长度

题目:

解题思路;

倒序遍历,先将末尾的空格过滤,再统计至第一个空格。

条件i >= 0 放在前面先判断,条件si != ' '放后面,反之遇到单字符会溢出。

时间复杂度:

空间复杂度:

复制代码
int lengthOfLastWord(char* s) {
    int ans = 0, num = strlen(s)-1;
    while(s[num] == ' ') {
        --num;
    }
    for (int i = num; i >= 0 && s[i] != ' '; i--) { 
        ans++;
    }
    return ans;
}
相关推荐
Rain的Java大神之路1 小时前
LeetCode 37 解数独面试攻略:回溯 + 位掩码 + MRV,从暴力到毫秒级求解
java·后端·leetcode
NEFU_Jyj1 小时前
贝尔数(组合数学)
算法
希和20272 小时前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法
Pniubi2 小时前
力扣73 矩阵置零
算法·leetcode·矩阵
布莱克60512 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
D e re k ZH15 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
石小石Orz16 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
Zwawa17 小时前
屏幕不止一种:OLED、LCD1602字符屏、TFT/IPS图形屏和串口屏怎么用,这与TTY和PTY又有什么关系
c语言·单片机·嵌入式
Fruiticecake17 小时前
C 程序员速通现代 C++(一):lambda、std::function、移动语义与智能指针
c语言·c++