- 0
- 0
- 约1.48万字
- 约 66页
- 2019-05-06 发布于广东
- 举报
作为抽象数据类型的数组 顺序表 稀疏矩阵 字符串 作为抽象数据类型的数组 一维数组 一维数组的示例 一维数组的特点 连续存储的线性表(别名 向量) 一维数组(Array)类的定义 #include iostream.h #include stdlib.h template class Type class Array { Type *elements; //数组存放空间 int ArraySize; //当前长度 void getArray ( ); //建立数组空间 public: Array( int Size=DefaultSize ); Array( const ArrayType x ); 一维数组公共操作的实现 行向量 下标 i 页向量 下标 i 列向量 下标 j 行向量 下标 j 列向量 下标 k 数组的连续存储方式 一维数组 三维数组 各维元素个数为 m1, m2, m3 下标为 i1, i2, i3的数组元素的存储地址: (按页/行/列存放) n 维数组 各维元素个数为 m1, m2, m3, …, mn 下标为 i1, i2, i3, …, in 的数组元素的存储地址: 线性表 (Linear List) 线性表的定义和特点 定义 n( ? 0)个数据元素的有限序列,记作 (a1, a2, …, an) ai 是表中数据元素,n 是表长度。 遍历 逐项访问: 从前向后 从后向前 线性表的特点 除第一个元素外,其他每一个元素有一个且仅有一个直接前驱。 除最后一个元素外,其他每一个元素有一个且仅有一个直接后继。 顺序表 (Sequential List) 顺序表的定义和特点 定义 将线性表中的元素相继存放在一个连续的存储空间中。 可利用一维数组描述存储结构 特点 线性表的顺序存储方式 遍历 顺序访问 顺序表(SeqList)类的定义 template class Type class SeqList { Type *data; //顺序表存储数组 int MaxSize; //最大允许长度 int last; //当前最后元素下标 public: SeqList ( int MaxSize = defaultSize ); ~SeqList ( ) { delete [ ] data; } int Length ( ) const { return last+1; } 顺序表部分公共操作的实现 template class Type //构造函数 SeqListType :: SeqList ( int sz ) { if ( sz 0 ) { MaxSize = sz; last = -1; data = new Type[MaxSize]; if ( data == NULL ) { MaxSize = 0; last = -1; return; } } } 顺序搜索图示 稀疏矩阵 (Sparse Matrix) 用三元组表表示的稀疏矩阵及其转置 稀疏矩阵转置算法思想 设矩阵列数为 Cols,对矩阵三元组表扫描Cols 次。第 k 次检测列号为 k 的项。 第 k 次扫描找寻所有列号为 k 的项,将其行号变列号、列号变行号,顺次存于转置矩阵三元组表。 扫描矩阵三元组表,根据某项的列号,确定它转置后的行号,查 rowStart 表,按查到的位置直接将该项存入转置三元组表中。 字符串 (String) 字符串是 n ( ? 0 ) 个字符的有限序列, 记作 S : “c1c2c3…cn” 其中,S 是串名字 “c1c2c3…cn”是串值 ci 是串中字符 n 是串的长度。 例如, S = “Tsinghua University” 字符串抽象数据类型和类定义
您可能关注的文档
- 北京吉利学院汽车工程学院计算机应用课件第5章 中文PowerPoint2010.ppt
- 北京吉利学院汽车工程学院计算机应用课件第6章 网络基本应用.ppt
- 北京交通大学供应链管理课件第八讲 供应链物流管理――网络.ppt
- 北京交通大学供应链管理课件第二讲 供应链管理概述.ppt
- 北京交通大学供应链管理课件第九讲 供应链信息管理.ppt
- 北京交通大学供应链管理课件第六讲 供应链物流管理――运输.ppt
- 北京交通大学供应链管理课件第七讲 供应链物流管理――库存.ppt
- 北京交通大学供应链管理课件第三讲 供应链战略及供应链的构建.ppt
- 北京交通大学供应链管理课件第十讲 供应链管理方法.ppt
- 北京交通大学供应链管理课件第四讲 供应链合作伙伴的选择.ppt
原创力文档

文档评论(0)