CH3栈,队列,串.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CH3栈,队列,串

template class T void seqStack::Push ( T x) { if (top==MAX_SIZE-1) throw “溢出”; top++; data[top]=x; } template class T T seqStack:: Pop ( ) { if (top==-1) throw “溢出”; x=data[top--]; return x; } 第3章 特殊线性表——队列 出队的伪代码: 1. 如果队空,则抛出下溢异常; 2. 暂存队头元素所在结点; 3. 将队头元素所在结点摘链; 4. 如果被删除的队头元素同时也是队尾元素,则修改队尾指针; 第3章 特殊线性表——队列 template class T T LinkQueue::DeQueue( ) { if (rear==front) throw 下溢; p=front-next; x=p-data; front-next=p-next; if (p-next==NULL) rear=front; delete p; return x; } 出队C++算法 第3章 特殊线性表——队列 3.2.4 循环队列和链队列的比较 时间性能: 循环队列和链队列的基本操作的算法都需要常数时间O (1)。 空间性能: 初始时循环队列必须确定一个固定的长度,所以有存储元素个数的限制和空间浪费的问题。链队列没有队列满的问题,只有当内存没有可用空间时才会出现队列满,但是每个元素都需要一个指针域,从而产生了结构性开销。 第3章 特殊线性表——串 3.3.1 串的逻辑结构 1. 串的定义 串是零个或多个字符组成的有限序列 。 空格串:只包含空格的串。 串的长度 :串中所包含的字符个数。 空串:长度为0的串。 空串记作 “ ”; 非空串通常记作:S=“s1 s2 …… sn” 其中:S是串名;双引号是定界符 ;双引号引起来的部分是串值 。si(1≤i≤n)是一个任意字符。 第3章 特殊线性表——串 子串:串中任意个连续的字符组成的子序列。 主串:包含子串的串 。 子串在主串中的位置:子串的第一个字符在主串中的序号 。 S1=ab12cd S2=“ab12 S3= S4=φφφ “ 串的长度? 2. 串的抽象数据类型定义 串的基本操作通常以“串的整体”作为操作对象。 第3章 特殊线性表——串 ⑴ StrLength (s):求串s的长度。 ⑵ StrAssign (s1,s2):串赋值,将s2的串值赋值给串s1。 ⑶ StrConcat (s1,s2,s):串的连接,将串s2放在串s1的后面连接成一个新串s。 ⑷ SubStr (s,i,len):求子串,返回从串s的第i个字符开始取长为 len 的子串。 第3章 特殊线性表——串 ⑸ StrCmp (s1,s2):串比较,若s1=s2,返回0;若s1s2, 返回-1;若s1s2, 返回1。 ⑹ StrIndex (s,t):子串定位,返回子串t在主串s中首次出现的位置。若t不是s的子串,则返回0。 ⑺ StrInsert (s,i,t):串插入,将串t插入到串s的第i个位置。 ⑻ StrDelete (s,i,len):串删除,删除串s中从第i个字符开始连续len个字符。 ⑼ StrRep (s,t,r):串替换,在串s中用串r替换所有与串t相等的子串。 第3章 特殊线性表——串 SubStr (s,i,len)求子串算法示例 i n f i n i t y i = 3, len = 3 f i n i n f i n i t y i = 6, len = 4 i t y 超出 从串s中第i 个字符起连续取 长为len 个字符,形成子串并返回。 第3章 特殊线性表——串 3. 串的比较 串的比较是通过组成串的字符之间的比较来进行的。 给定两个串: X=x1x2…xn Y=y1y2…ym 则当n=m且x1=y1,…,xn=ym时,称X=Y; 当下列条件之一成立时,称X<Y: ⑴ n<m,且xi=yi(i=1,2,…,n); ⑵ 存在某个k≤min(m,n),使得xi=yi(i=1,2,…,k-1),xk<yk。 第3章 特殊线性表——串 3.3.2 串的存储结构 1. 串的顺序存储结构 定义:串的顺序存储结构是用数组来存储串中的字符序列。 在串的顺序存储中,如何标识一个串的实际长度? 0 1

文档评论(0)

dreamzhangning + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档