问题:设计一个顺序表类。 顺序表是一种常用的数据结构,它有点类似于C++语言中 的数组,即表中的各表项(数据)被存放在一块连续的内存 中。与数组不同的是,顺序表中的各表项必须是相邻的,即 各数据之间不得留有空白。若表未满、所有的空白必须留在 表的尾部
问题:设计一个顺序表类。 顺序表是一种常用的数据结构,它有点类似于 C++ 语言中 的数组,即表中的各表项(数据)被存放在一块连续的内存 中。与数组不同的是,顺序表中的各表项必须是相邻的,即 各数据之间不得留有空白。若表未满,所有的空白必须留在 表的尾部
顺序表的基本操作主要有: 1.建立一个空表 2.销毁一个顺序表 3.清空顺序表 4.测试顺序表是否为空表 5.测试顺序表是否已满 6.获得顺序表的最大长度 7.获得表中实际元素个数 8.取得表中指定位置上元素的值 9.在表中查找指定的数据元素 10.在指定位置插入一个数据元素 11.删除表中指定位置上的数据元素 12.遍历顺序表,主要用于测试顺序表
顺序表的基本操作主要有: 1. 建立一个空表 2. 销毁一个顺序表 3. 清空顺序表 4. 测试顺序表是否为空表 5. 测试顺序表是否已满 6. 获得顺序表的最大长度 7. 获得表中实际元素个数 8. 取得表中指定位置上元素的值 9. 在表中查找指定的数据元素 10. 在指定位置插入一个数据元素 11. 删除表中指定位置上的数据元素 12. 遍历顺序表,主要用于测试顺序表
设计思想: 1.通常情况下,一个具体的数据结构仅能存放某一种特定的 数据元素。为方便起见,本例所设计的顺序表中仅能存放int 型数据。 2.考虑到通用性,顺序表的大小应能由用户任意指定。因此, 该类应当拥有一个int型数据成员,根据用户的要求,利用 neW运算符为该数据成员申请一块动态指定大小的内存。 3.该类必须拥有一个int型数据成员来记录顺序表的大小;还 须有一个int型数据成员来记录表中当前存放的数据元素的个 数。注意:回顾顺序表与普通数组的区别可以发现,后者同时 还指出了当前表中第一个空白位置。 4.顺序表的创建与销毁分别由构造函数和析构函数来完成
设计思想: 1. 通常情况下,一个具体的数据结构仅能存放某一种特定的 数据元素。为方便起见,本例所设计的顺序表中仅能存放 int 型数据。 2. 考虑到通用性,顺序表的大小应能由用户任意指定。因此, 该类应当拥有一个 int* 型数据成员,根据用户的要求,利用 new 运算符为该数据成员申请一块动态指定大小的内存。 3. 该类必须拥有一个 int 型数据成员来记录顺序表的大小;还 须有一个 int 型数据成员来记录表中当前存放的数据元素的个 数。注意:回顾顺序表与普通数组的区别可以发现,后者同时 还指出了当前表中第一个空白位置。 4. 顺序表的创建与销毁分别由构造函数和析构函数来完成
∥/QL|STH #if I defined QLIST H ∥防止重复嵌放 define QLIST H #include <iostream. h> class QList i protected int * pData;∥指向动态数组的指针 int nNumElem;∥当前元素个数 int sIze ∥顺序表的大小 public QList(int = 10) QListo delete [pData; 3
// QLIST.H #if !defined _QLIST_H_ // 防止重复嵌放 #define _QLIST_H_ #include <iostream.h> class QList { protected: int *pData; // 指向动态数组的指针 int nNumElem; // 当前元素个数 int nSize; // 顺序表的大小 public: QList(int = 10); ~QList() { delete []pData; }
void Clear I nNumElem=0; J int IsEmpty o return nNumElem ==0 Full t return nNumElem > nSize nt Length return n Size; y int NumberofElemts( return nNumElem;] int Append(int) int Insert(int, int) int Delete(int, int&) int Find(int) void Traverse fendi ∥/ End of QLIST.H
void Clear() { nNumElem = 0; } int IsEmpty() { return nNumElem == 0; } int IsFull { return nNumElem >= nSize; } int Length() { return nSize; } int NumberOfElemts() { return nNumElem; } int Append(int); int Insert(int, int); int Delete(int, int&); int Find(int); void Traverse(); }; #endif // End of QLIST.H