zoukankan      html  css  js  c++  java
  • 大话数据结构 串

    串是由零个或多个字符组成的有限序列,又名叫字符串。 一般记为 s = “a1a2……an” (n>=0)。

    空格串,是只包含空格的串。

    子串与主串,串中任意个数的连续字符组成的子序列称为该串的字串。字串在主串中的位置,就是字串的第一个字符在主串中的序号。

    串的比较

    给定两个串: s = "a1a2……an", t = “b1b2……bn” ,当满足以下条件之一时,s < t :

    1)n < m , 且 ai = bi (i = 1, 2, 3, ……, n)。

    2) 存在某个 k<= min(m,n),使得 ai = bi ( i = 1, 2, ……, k-1), ak < bk 。

    串的抽象数据类型

    ADT    串(string)
    Data
            串中元素仅由一个字符组成,相邻元素具有前驱和后继关系。
    Operation
            StrAssign(T, *chars):    生成一个其值等于字符串常量chars的串T。
            StrCopy(T, S):    串S存在,由串S复制得串T。
            ClearString(S):    串S存在,将串清空。
            StringEmpty(S):    若串S为空,返回true,否则返回false。
            StrLength(S):    返回串S的元素个数,即串的长度。
            StrCompare(S, T):    若S>T,返回值>0,若S=T,返回0,若S<T,返回值<0。
            Concat(T, S1, S2):    用T返回由S1和S2联接而成的新串。
            SubString(Sub, S, pos, len):    串S存在,1<=pos<=StrLength(S),且0<=len<=StrLength(S)-pos+1,用Sub返回串S的第pos个字符长度为len的字串。
            Index(S, T, pos):    串S和T存在,T是非空串,1<=pos<=Strlength(S)。若主串S中存在和串T值相同的子串,则返回它在主串S中第pos个字符之后第一次出现的位置,否则返回0。
            Replace(S, T, V):    串S、T和V存在,T是非空串。用V替换主串S中出现的所有与T相等的不重叠的子串。
            StrInsert(S, pos, T):    串S和串T存在,1<=pos<=Strlength(S)+1。在串S的第pos个字符之前插入串T。
            StrDelete(S, pos, len):    串S存在,1<=pos<=Strlength(S)-len+1。从串S中删除第pos个字符起长度为len的字串。
    endADT

    KMP模式匹配算法及其改进

  • 相关阅读:
    网络运维与管理2013超值精华本
    [置顶] JQuery实战总结三 标签页效果图实现
    ASP.NET 联想控件(Autocomplete)测试可用 ascx
    python手记(48)
    [Android]解决3gwap联网失败:联网请求在设置代理与直连两种方式的切换
    「两」创建一个带 ssh 镜座服务(修订版)--采用 Dockerfile 创
    美国同事实习
    javascript相框echarts插件实现酷立方效果图的人
    Docker container 集装箱说明
    tinkerpop(1) 地图数据库console科研
  • 原文地址:https://www.cnblogs.com/didada/p/9636176.html
Copyright © 2011-2022 走看看