【LeetCode】58.最后一个单词的长度

思路:

s = " fly me to the moon ",为了计算最后一个单词的长度,我们需要计算最后一个单词的首尾字母的下标:

单词最后一个字母的下标,也就是最后一个非空格字符的下标,记作 i。上例中 i 是字母 n 的下标。

单词第一个字母的下标,我们可以找到在 i 左边的最近空格的下标,记作 j,那么 j+1 就是这个单词的第一个字母的下标。如果左边没有空格,那么 j=−1。

单词长度为i−j

cpp 复制代码
int lengthOfLastWord(char* s) 
{
	 int i = strlen(s) - 1;
    while (s[i] == ' ') {
        i--;
    }

    int j = i - 1;
    while (j >= 0 && s[j] != ' ') {
        j--;
    }

    return i - j;


}
相关推荐
ltl17 分钟前
HNSW:图索引如何击败树索引
算法
曹牧2 小时前
C#:数字的定义和表示方式
算法·c#
Nil2082 小时前
leetcode 138随机链表的复制
算法·leetcode·链表
疯狂打码的少年4 小时前
【数据结构】图的遍历:深度优先搜索(DFS)
数据结构·笔记·算法·深度优先
-凌凌漆-5 小时前
【freertos】Task创建(v2)
java·开发语言·算法
Nil2085 小时前
leetcode 24两两交换链表中的节点
算法·leetcode·链表
.格子衫.5 小时前
033动态规划之状态压缩DP——算法备赛
算法·动态规划
ysa0510306 小时前
c++常用自带函数用法与注意
c++·笔记·算法
带多刺的玫瑰7 小时前
Leecode#4刷题之寻找两个正序数组的中位数
java·前端·算法