汇编网首页登录博客注册
masmaster的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
文章收藏

[2010-08-16 10:35] 串的抽象数据类型

串的抽象数据类型表示串中的数据元素,数据元素之间的逻辑关系,以及对串的操作集合。其定义如下:

ADT string
数据元素集合
    字符的一个有限序列
基本操作:
    初始化串(initstr):初始化串
    求串长度(strlen) :求取字符串中字符的个数
    取字串(substring):获取字符串中的一个连续字符序列
    定位串(indexstr) :查找是否存在字串
    串连接(concat)   :连接两个字符串形成一个新串
    串比较(strcomp    :比较两个串的大小
    判断空串(stremp) :判断给定字符串是否为空串
    串替换(strrep)   :替换字符串中指定的所有字串
    串赋值(strassign):给串赋值
    串插入(strinsert):在串的指定位置插入新串
    串删除(strdelelt):删除串中指定位置开始的数个字符

在串操作中,串赋值,串比较,求串长,串连接和求字串为串的最小操作子集。利用他们可以实现串的其他操作。

与线性表的顺序存储类似,串的顺序存储也是用一组地址连续的存储空间来存放串的字符序列。这组连续的存储单元可以是静态分配的,  也可以是动态分配的,因此形成了串的定长顺序存储表示和堆存储表示

串的定长顺序存储表示与线性表的顺序存储结构类似。也是采用静态内存分配方式,分配一组地址连续的存储单元,用来存放串的字符序列。由于串的长度固定,超过串长的串值必须舍去,称为截断。

串的堆存储表示是指采用动态内存分配方式,分配一组地址连续的存储单元,用来存放串的字符序列。由于采用动态内存分配方式,因此,串的长度是可变的, 不存在串截断问题。
评论次数(0)  |  浏览次数(518)  |  类型(数据结构笔记) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码