力扣-58. 最后一个单词的长度

复制代码
int lengthOfLastWord(char* s) 
{
    char* temp = s;
    char* ret = s;

    int count = 0;/*返回的长度*/
    while (*temp)
    {
        /*只记录空格后是字母的地址*/
        if ((*temp == ' ') && (*(temp + 1) != '\0') && (*(temp + 1) != ' '))
        {
            ret = temp + 1;
        }
        temp++;
    }

    while (*ret)
    {
        if (isalpha(*ret) != 0)/*判断空格后的字符串中函数字符的个数*/
        {
            count++;
        }
        else
        {
            break;
        }
        ret++;
    }

    return count;
}

思路:

1.当空格后是字母时,记录首字母的地址。如果多个空格连续以及空格后边就是结束符'\0'的情况时,不要记录地址。

2.拿到记录的地址后,遍历地址后边的字符串,记录字母的个数。不要使用strlen函数进行求解个数,因为会把后边空格也计算上。

相关推荐
zander2581 小时前
LeetCode 300. 最长递增子序列
算法·leetcode·深度优先
欧叶冲冲冲1 小时前
Python常见数据结构的CRUD(LeetCode高频版速查)
数据结构·python·leetcode
圣保罗的大教堂2 小时前
leetcode 3622. 判断整除性 简单
leetcode
Lyyaoo.2 小时前
【普通数组】【中等】除了自身以外数组的乘积
数据结构·算法·leetcode
圣保罗的大教堂4 小时前
leetcode 2996. 大于等于顺序前缀和的最小缺失整数 简单
leetcode
圣保罗的大教堂4 小时前
leetcode 3702. 按位异或非零的最长子序列 中等
leetcode
青 春 记 忆5 小时前
LeetCode 206. 反转链表|Python 解法详解
python·leetcode·链表
青 春 记 忆8 小时前
LeetCode 226. 翻转二叉树|Python 解法详解
python·算法·leetcode
啊嘞嘞?8 小时前
力扣(回文链表)
算法·leetcode·链表