数据结构与算法系列-串-串的基本概念与存储结构
来源:互联网 发布:ubuntu mate和普通 编辑:程序博客网 时间:2024/06/08 02:39
串的基本概念
串是一种特殊的线性表,他的数据对象是字符集和,它的每个元素都是一个字符一系列相连的字符就组成了一个字符串,简称串
串的描述:s = "a1a2a3..........an" (n >= 0);(n称为串的长度)
串的存储结构
线性表的顺序存储结构和链式存储结构对于串来说都是适用的。
静态存储结构
串的静态存储结构采用顺序存储结构,简称顺序串。
描述:
typedef struct string{char ch[MAXLEN];int len;}STRING;
当计算机按字单位遍址时,一个存储单元由若干个字节组成,这是顺序串存储结构有非紧缩存储和紧缩存储两种方式。
串的非紧缩式存储
假设计算机的字长为32位,即4个字节。则一个存储单元仅存放一个字符,就要浪费三个字节。
优点:对串中的字符处理效率高,但对存储空间的利用率低。
串的紧缩式存储
即尽可能的将多个字符存放在一个字中。紧缩存储放肆和对存储空间利用效率高,但对串中的字符操作很不方便,需要花较多的处理时间。
链式存储结构
串的链式存储结构称为链串,结构与链表相似,链串中每个结点有两个域,一个是值域,存放字符串中的字符,另一个是指针域,用于存放后续结点的地址。
定义:
typedef struct node{ char data; struct node *next; }LinkStrNode; //结点类型
索引存储结构
构造方法:1:开辟一块连续的存储空间,用于存放各串本身的值
2:再另外建一个索引表,在索引表的项目中存放一个串的名称、长度和在存储空间的起始位置。
3:在系统运行过程中,每当有一新的串出现时,系统就从存放串值的存储空间中给新串分配一块连续的空间,用于存放该串的值。另外在索引表中增加一个索引项,该项纪录该串的名称、长度、起始位置。
- 数据结构与算法系列-串-串的基本概念与存储结构
- 数据结构与算法(Java描述)-11、串的基本概念以及串存储结构
- 数据结构与算法系列-树-二叉树存储结构
- (十)串的基本概念与串存储结构
- 数据结构与算法系列-树-数的基本概念
- 数据结构与算法的基本概念
- 算法与数据结构的基本概念
- 数据结构与算法系列-线性表-线式存储结构、链式存储结构
- 数据结构与算法 基本概念
- 数据结构与算法 基本概念
- 数据结构与算法4:树的基本存储结构
- 数据结构与算法5:图的存储结构
- 数据结构与算法系列-队列-队列的链式存储
- 【数据结构与算法】【排序】基本概念
- 【数据结构与算法】【查找】基本概念
- 数据结构与算法基本概念总结
- 数据结构与算法系列-串-串的基本操作
- 数据结构与算法6:二叉树的存储结构与遍历
- Sqlite数据库分页
- Ubuntu 中文字体美化方案大全 (5): 使用苹果字体
- tcl.eval,tcl.evalc,tcl.eval and tcl.evalf 的区别
- V5服务器参数管理
- SpyDroid学习二 http与https的区别
- 数据结构与算法系列-串-串的基本概念与存储结构
- WPF在XAML里面引用枚举值的注意
- SQL中exists,any,all,some,in的问题
- MongoDB分片介绍(二)——分片键的选择
- 【Android】数据存储之Sharepreference
- Ubuntu 中文字体美化方案大全 (6): 使用免费文泉驿正黑字体
- 绑定新浪微博API 实现验证 登录 返回接口获取信息
- 添加节点能量模型
- QT鼠标拖拽功能简介