当前位置: 首页 > news >正文

【考研数据结构——C语言描述】第四章 串

25计算机考研,数据结构知识点整理(内容借鉴了王道408+数据结构教材),还会不断完善所整理的内容,后续的内容也会不断更新(可以关注),若有错误和不足欢迎各位朋友指出!

 

一.串的基本概念 

字符串(string)是由零个或多个字符组成的有限序列。记为 S= 'a_{1},... ,a_{i-1}a_{i},...,a_{n}'(n>0)

 其中:

串名:S,串的名字

串值:用单引号括起来的字符序列就是串的值,每个a_{i}(1≤i≤n)可以是字母数字或其他字符。

串长:n是串中字符的个数,即串的长度,n=0时的串称为空串(null string),用∅表示

需要特别指出的是,串值必须用一对单引号括起来(C语言中是双引号),但引号是定界符它不属于串,其作用是避免串值与变量名或常混淆

子串:串中任意连续的字符组成的子序列(含空串)称为该串的子串。

真子串:指不包含自身的所有子串

主串:包含子串的串称为主串,子串为主串的一部分

子串在主串中的位置:通常将字符在串中的序号称为该字符在串中的位置(字符位置)。子串在主串中的位置则以子串的第一个字符在主串中的位置来表示(子串位置)。

假设有串 A='China Beijing',B='Beijing',C='China',则它们的长度分别为13、7和5。B和
C是A的子串,B在A中的位置是7,C在A中的位置是1。

串相等:当且仅当两个串的值相等时,称这两个串是相等的(所有空串是相等的),即只有当两个串的长度相等,并且每个对应位置的字符都相等时才为串相等。

空格串≠空串:注意,空串和空格串(blank string)的区别:由一个或多个作为特殊字符的空格组成的串,称为空格串,其长度为串中空格字符的个数;而空串是无任何字符组成的串,其串长度为零。因此,串也是一种特定的线性表,串的逻辑结构和线性表极为相似,其特定性仅在于串的数据对象限定为字符集。

串的抽象数据类型定义:

相关文章:

  • MySQL的高可用方案:深入Galera Cluster和ProxySQL
  • 【Docker系列】跨平台 Docker 镜像构建:深入理解`--platform`参数
  • Golang - 连接MySQL执行查询脚本
  • OpenAI 宕机事件:GPT 停摆的影响与应对
  • Flink 命令行提交、展示和取消作业
  • 安装golang
  • 【机器学习】神经网络与深度学习:探索智能计算的前沿
  • Python基础教程(十五):面向对象编程
  • 聚焦赛宁网安竞赛平台+赛事服务,引领网络安全竞赛新潮流
  • 浏览器无痕模式和非无痕模式的区别
  • 低功耗蓝牙ble开发(一)——bluez介绍及源码分析
  • 操作系统复习
  • Java | Leetcode Java题解之第151题反转字符串中的单词
  • 【Quartus 13.0】EP1C3144I7 部署4*6矩阵键盘
  • [羊城杯 2020]easyser
  • Android无障碍服务
  • 微信小游戏插件申请,微信小程序插件管理
  • 新手怎么使用GitHub?
  • 解决CentOS 7无法识别ntfs的问题
  • 2024.6.12总结
  • 为什么有的人闻到烟味,会咳嗽、胸闷?别再伤害身边的人
  • 五一假期上海虹桥边检站出入境近4.7万人次,韩国入境旅客同比增118%
  • 新闻1+1丨多地政府食堂开放 “舌尖上的服务”,反映出怎样的理念转变?
  • 特朗普要征100%关税,好莱坞这批境外摄制新片有麻烦了
  • 人民日报今日谈:以青春之我,赴时代之约
  • 韩国经济副总理崔相穆宣布辞职