1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CH06-列表剖析

内容简介 列表的ADT描述 基于静态数组的列表实现 基于动态数组的列表实现 单链表的介绍 单链表的实现 什么是列表? 超市货物列表 工作计划表 班级成绩表 1、列表的ADT描述 数据元素集合 数据元素的一个有限序列,所有元素都是同一类型。 基本操作 构造函数:创建空列表。 判空:检查列表是否为空。 插入:在列表中增加一项。 删除:在列表中删除一项。 遍历:按顺序访问和处理列表中元素,也称迭代操作。 列表类的创建 设计列表类 标识出实现ADT操作的函数成员 构造函数:创建空列表。 Empty():检查列表,根据列表是否为空返回真或假。 Insert():在列表给定位置增加一个值来修改列表。 Erase():删除列表中给定位置上的值来修改列表。 Display():遍历列表,显示每一个元素。 实现列表类 定义存储数据值的数据成员。 定义在设计阶段标识出的函数成员。 2、基于静态数组的列表实现 选择存储结构 列表元素是线性排列和数组元素一样 绝大多数编程语言提供了数组类型 开发基本点列表操作算法非常容易 2、基于静态数组的列表实现 #include iostream const int CAPACITY = 1024; typedef int ElementType; class List{ public: List(); bool empty() const; void insert(ElementType item, int pos); void erase(int pos); void display(ostream out) const; private: int mySize; ElementType myArray[CAPACITY]; }; ostream operator (ostream out, const List aList); 2、基于静态数组的列表实现 List::List( ) : mySize(0){} 2、基于静态数组的列表实现 void List::insert(ElementType item, int pos){ if (mySize == CAPACITY) { cerr *** No space for list element ***\n; exit(1); } if (pos 0 || pos mySize) { cerr *** Illegal location to insert -- pos . List unchanged. ***\n; return; } for(int i = mySize; i pos; i--) myArray[i] = myArray[i - 1]; myArray[pos] = item; mySize++; } 2、基于静态数组的列表实现 void List::erase(int pos){ if (mySize == 0) { cerr *** List is empty ***\n; return; } if (pos 0 || pos = mySize) { cerr Illegal location to delete -- pos . List unchanged. ***\n; return; } for(int i = pos; i mySize; i++) myArray[i] = myArray[i + 1]; mySize--; } 2、基于静态数组的列表实现 3、基于动态数组的列表实现(向量) 选择存储结构 去掉限定数组容量的常量声明,添加一个变量数据成员来存储在对象声明时由用户给定的数组容量 修改对象成员为一个指针,指向运行时动态分配的存储空间地址 3、基于动态数组的列表实现 #include iostream typedef int ElementType; class Li

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档