• 字符串


    问题描述:

        使用C++实现字符串操作,包括操作如下:

    clipboard

    问题说明:

    /*

    * 字符串是一种特殊的线性表,其实现可以采用三种方式

    * (1)数组的顺序存储

    * (2)链表的链式存储

    * (3)存储在堆区的半动态存储

    **/

    /*

    * 下面以堆区的存储实现字符串的一些操作,

    * 存储在堆区的半动态存储,集合了数组和链表的优点,动态扩充,存储在连续空间

    **/

    问题解决:

            求解字符串操作中的如上函数:

    创建构造函数:

    clipboard[1]

    //下面是两种构造函数,有参数的构造函数和无参数的构造函数

    clipboard[2]

    (1)复制字符串操作:

    clipboard[3]

    注意:

            以上使用字符串的操作,使用间接赋值操作,也就是ptr[j]=elem[j];使用*ptr操作,在进行ptr++的操作时,可能引起ptr指针的混乱(其他类体中的函数使用ptr,不正确)。

    (2)字符串的查找,这里使用BF算法,算法的思想是:

                从字符串中第一个字符开始寻找,找到第一个与待测字符串匹配的位置,开始逐个进行字符串的匹配,如果出现不匹配的情况,那么进行回溯,返回到与待测字符串进行匹配成功的第一个位置的下一个位置,继续进行从头开始的匹配操作。

    算法的主要思想就是:回溯

    clipboard[4]

    (3)查找字符串中指定的字符

    clipboard[5]

    (4)求字符串的子串

    clipboard[6]

    (5)字符串连接

    clipboard[7]

    (6)求字符串的长度

    clipboard[8]

    (7)输出字符串

    clipboard[9]

    (8)析构函数

    clipboard[10]

    主函数:

    clipboard[11]

  • 相关阅读:
    vue的class绑定
    less里面calc() 语法
    问题
    Spring Boot面试题
    Redis面试题
    nginx面试题
    rabbitMQ面试题
    Linux+Git命令
    docker
    JAVA常用单词
  • 原文地址:https://www.cnblogs.com/luosongchao/p/3048647.html
Copyright © 2020-2023  润新知