- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构5陈慧南_数组和字符串
DATA STRUCTURE 第4章 数组和字符串 数组 1 特殊矩阵 2 稀疏矩阵 3 字符串 4 数组 1 特殊矩阵 2 稀疏矩阵 3 字符串 4 DATA STRUCTURE §4.4.1 ?字符串ADT 字符串的定义 字符串(简称为串)是由n(≥0)个字符组成的有限序列。 S = “a0 a1 … an-1” ( n≥0 ) 其中,S 是串名,单引号括起来的字符序列是串S的值。n 是串中字符个数,又称串长度,n=0的串称为空串。 要注意区分空串和空白串。 串中任意连续个字符组成的子序列称为该串的子串,包含子串的串称为主串。通常以子串的首字符在主串中的位置作为子串在主串中的位置。 S = “abcabcaabcbcde” P = “aabc” DATA STRUCTURE §4.4.1 ?字符串ADT 字符串ADT ADT String{ 数据: 字符串是由n(≥0)个字符组成的有限序列 S = “a0a1…an-1”,0 ≤ i n 。 运算: Create():建立一个空串。 Destroy():撤消一个串。 Length():返回当前串对象的长度。 Clear():置为空串。 Assign(S):串S的值赋给当前串对象。 Concat(b):将串b连接在当前串对象之后。 DATA STRUCTURE §4.4.1 ?字符串ADT Insert(P,i):将串P插在当前串对象的位置i处。 Delete(i,len):从当前串对象的位置i起删除len个字符。 Substr(i,len):返回当前串对象中,从位置i开始的len个字符组成的子串。 Find(i,P):返回子串P在当前串对象中的位置。若当前串对象不包含串P,则返回-1。 } DATA STRUCTURE §4.4.2 ?字符串的存储表示 顺序表示 串的顺序表示可用C++的一维字符数组来描述。 #includestring.h char s[20]=“cdabcde“; 链接表示 … A B C I ∧ first first A B C D E F G H I ∧ \0 DATA STRUCTURE §4.4.2 ?字符串的存储表示 #include string.h class String { public: String(); String(const char *p); ~String(){ delete [] str; } int Find(int i, String P); private: int n; //当前串长 char *str; //动态一维字符数组的指针 }; String::String(const char *p) { n = strlen(p); str = new char[n+1]; strcpy(str, p); } DATA STRUCTURE §4.4.2 ?字符串的存储表示 C语言中字符串操作函数 函数原型: char* strdup(const char* s) 函数功能: 字符串拷贝,目的空间由该函数分配 函数返回: 指向拷贝后的字符串指针 函数原型: char* strcpy(char* str1,char* str2); 函数功能: 把str2指向的字符串拷贝到str1中去 函数返回: 返回str1,即指向str1的指针 函数原型: char* strncpy(char* dest, const char* src,int count) 函数功能: 将字符串src中的count个字符拷贝到字符串dest中去 函数返回: 指向dest的指针 函数原型: unsigned int strlen(char* str); 函数功能: 统计字符串str中字符的个数(不包括终止符\0) 函数返回: 返回字符串的长度. DATA STRUCTURE §4.4.2 ?字符串的存储表示 C语言中字符串操作函数 函数原型: char* strchr(char* str,char ch); 函数功能: 找出str指向的字符串中第一次出现字符ch的位置 函数返回: 返回指向该位置的指针,如找不到,则返回空指针 函数原型: char* strrchr(const char *s, int c) 函数功能: 得到字符串s中最后一个含有c字符的位置指针 函数返回: 位置指针 函数原型: char* strstr(char* str1,char* str2); 函数功能: 找出str
您可能关注的文档
- 政法与经济管理系成本会计.ppt
- 政法干警民法学讲义(部分).doc
- 政策及程序守则.doc
- 政策性农业保险理赔实务规程培训讲义.ppt
- 政策要闻doc.doc
- 政策调控的变化对于产品影响趋势分析(重庆版).ppt
- 故障定位与分析.doc
- 敏腦 薪資處理系統.doc
- 政策风暴消退.ppt
- 教你五分钟消灭牙垢.doc
- 2024年光伏全球巡礼中国篇:供需失衡,何时出清.pdf
- 2024年服务消费行业分析报告:服务消费的时代交响,不畏浮云遮望眼,迭代发展进行时.pdf
- 2024年电子行业分析报告:Scaling+law依然有效,自研AI芯片后劲十足.pdf
- 2024年艾融软件分析报告:深耕金融IT领域,收购优质资产打开市场空间.pdf
- 2023年AIGC行业分析报告:GPT-4v如何实现强大多模态,从文生图到图生文.pdf
- 2023年电力辅助服务行业分析报告:重塑价值.pdf
- 2023年亚朵分析报告:体验驱动,中高端国民品牌.pdf
- 2023年钠离子电池行业分析报告:突破关键资源瓶颈,性能优势显著.pdf
- 2023年甲骨文分析报告:战略拐点已过,基本面回归上行趋势.pdf
- 2024年智能汽车行业分析报告:FSD入华在即,关注汽车数据闭环服务商.pdf
最近下载
- 中职《幼儿心理学》课程教学课件-项目二任务3 感知觉规律的运用.pptx VIP
- Hasselblad哈苏H6中文说明书.pdf
- (人教2024版)一年级数学上册《数学游戏》单元复习讲义.docx
- 木材人造板制造工艺考核试卷.docx VIP
- 百家争鸣(共张PPT)-PPT课件模版[1].pptx
- 《无障碍设施施工验收及维护规范》(GB50642—2011)的解读.pdf VIP
- 13_一等奖丨清华大学丨“三位一体,三创融合,开放共享”创新创业教育体系和平台的创建(20220427推文).pdf VIP
- 百得两用燃烧机TBML 1200 ME电子控制器调试安装说明书.pdf
- 磁共振成像原理与临床应用完整版.ppt VIP
- 人教2024版英语七年级上册Starter Unit 1- Unit 3基础知识练习(含答案).docx VIP
文档评论(0)