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

题目:

解题思路;

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

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

时间复杂度:

空间复杂度:

复制代码
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;
}
相关推荐
历程里程碑4 分钟前
LeetCode热题11:盛水容器双指针妙解
c语言·数据结构·c++·经验分享·算法·leetcode·职场和发展
wadesir7 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
yugi9878387 小时前
基于MATLAB实现协同过滤电影推荐系统
算法·matlab
TimberWill7 小时前
哈希-02-最长连续序列
算法·leetcode·排序算法
Morwit8 小时前
【力扣hot100】64. 最小路径和
c++·算法·leetcode
leoufung8 小时前
LeetCode 373. Find K Pairs with Smallest Sums:从暴力到堆优化的完整思路与踩坑
java·算法·leetcode
wifi chicken8 小时前
数组遍历求值,行遍历和列遍历谁更快
c语言·数据结构·算法
胡楚昊8 小时前
NSSCTF动调题包通关
开发语言·javascript·算法
Gold_Dino9 小时前
agc011_e 题解
算法
bubiyoushang8889 小时前
基于蚁群算法的直流电机PID参数整定 MATLAB 实现
数据结构·算法·matlab