作者: ahuustcly | 来源:发表于2018-10-21 12:33 被阅读0次

1.给定两个字符串,求出它们之间最长公共子串

2.输入一个英文句子,翻转句子中单词的顺序,但是单词中的字符顺序不变

void reverse(char *pStart, char *pEnd)
{
    char temp;
    if (NULL == pStart || NULL == pEnd)
    {
        return;
    }
    while (pStart < pEnd)
    {
        temp = *pStart;
        *pStart = *pEnd;
        *pEnd = temp;
        
        pStart++;
        pEnd--;
    }
}

/*
输入一个英文句子,翻转句子中单词的顺序,但是单词内的字符顺序不变
用例:
①句子中有多个单词、一个单词
②NULL、字符串指向的内容为空、字符串只有空格
*/
char *reverseSentence(char *pSentence)
{
    if (NULL == pSentence || strlen(pSentence) <= 1)
    {
        return pSentence;
    }

    char *pStart = pSentence;
    char *pEnd = pSentence + strlen(pSentence) - 1;
    reverse(pStart, pEnd);

    pStart = pEnd = pSentence;
    while (*pStart != '\0')
    {
        if ((*pEnd <= 'z' && *pEnd >= 'a') ||
            (*pEnd <= 'Z' && *pEnd >= 'A'))//正常单词字符
        {
            pEnd++;
        }
        else if (pStart != pEnd)
        {
            reverse(pStart, pEnd-1);
            if (*pEnd != '\0')
                pStart = ++pEnd;
            else
                break;
        }
        else
        {
            pStart = ++pEnd;
        }
    }
    return pSentence;
}

相关文章

  • 串手串

    某多买的手工材料到了,晚饭后回到家,开始串手串。 之前在老家在店里买的石榴石手串200多,有点紧,勒胳膊。 想着买...

  • 糖葫芦

    糖葫芦啊,糖葫芦, 串一串啊,串一串, 五个串一串, 味道酸又甜。

  • 日日行

    一串串的星月隐了,一串串的太阳升起来;一串串的日子里,和着一串串的柴米油盐;一串串的笑声后,或躲着一串串...

  • 模式匹配中Brute-Force与KMP算法关键提取

    模式匹配是串结构的一种操作方法,用于串的匹配。待匹配串称为主串(也叫目标串),执行串称为子串(也叫模式串)。模式匹...

  • iOS中的NSString与NSMutableString

    字符串的创建 字符串读写 字符串的比较 字符串的搜索 字符串截取 字符串替换 字符串与路径 字符串转换 NSMut...

  • Javascript知识点整合

    字符串 单行字符串: ‘字符串’或“字符串” 多行字符串: `多行字符串` 字符串操作: 字符串连接‘+’号 长度...

  • DS串应用--串替换

    题目描述 给出主串、模式串、替换串,用KMP算法找出模式串在主串的位置,然后用替换串的字符替换掉模式串 本题只考虑...

  • Go 关于串的三个经典案例

    子串查找 介绍 子串查找,也可以成为字符串查找。其中有两个字符串,分为主串和子串(模式串)。在主串中查找是否含有子...

  • php 字符串常见方法汇总

    字符串拼接 字符串检索 字符串截取 字符串替换 字符串大小写转化 字符串转数组 字符串格式化

  • jq的字符串操作

    字符串拼接 字符串长度 子串 split trim 子串替换

网友评论

      本文标题:

      本文链接:https://www.haomeiwen.com/subject/wuxczftx.html