力扣-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函数进行求解个数,因为会把后边空格也计算上。

相关推荐
Liangwei Lin1 天前
LeetCode 118. 杨辉三角
算法·leetcode·职场和发展
YL200404261 天前
047从前序与中序遍历序列构造二叉树
算法·leetcode
如竟没有火炬1 天前
字符串相乘——int数组转字符串
开发语言·数据结构·python·算法·leetcode·深度优先
YL200404262 天前
046二叉树展开为链表
数据结构·leetcode·链表
如竟没有火炬2 天前
至少有K个重复字符的最长子串
开发语言·数据结构·python·算法·leetcode·动态规划
水蓝烟雨2 天前
2359. 找到离给定两个节点最近的节点
算法·leetcode
阿Y加油吧2 天前
二刷动态规划经典题:从打家劫舍到完全平方数,Java 实现复盘与优化
leetcode
阿Y加油吧2 天前
二刷 LeetCode:爬楼梯与杨辉三角,Java 实现复盘
java·算法·leetcode
凌波粒2 天前
LeetCode--101. 对称二叉树(二叉树)
算法·leetcode·职场和发展
_深海凉_2 天前
LeetCode热题100-二叉树的最大深度
算法·leetcode·职场和发展