简单顺序表 C语言实现 的C++改进版 实现顺序表长度自动增加
顺序表是以数组为存储结构的线性表。由于数组中各元素的地址是可计算的,所以查找定位操作 有很高的执行效率。但是这种顺序存储结构的缺点也相当明显,要获得连续的内存空间就必须一次性申请,而在程序执行之前往往无法精确得到所需空间的大小。这时通常先确定一个合适的数组长度,如果后来空间不够,再重新申请一个更大的空间并把原先空间的数据转移过来。可以预见到,如果数据庞大的话,这个转移操作是相当耗费资源的。所以顺序表往往用在一些经常查找却很少改动的数据上。
程序清单:SeqList.h SeqListTest.cpp
SeqList.h
/**/
/* SeqList.h */

/**/
/* Coding by nyzhl */

template
<
class
T
>

class
SeqList
...
{
public:
SeqList(int init=50, int incr=10);
bool IsEmpty() const;
int Locate(T dat) const;
T GetData(int index) const;
void Insert(int index, T dat);
T Delete(int index);
private:
int size,increaseSize,last;
T *data;
}
;
//
构造函数
template
<
class
T

这篇博客介绍了C++对简单顺序表的改进,实现了顺序表长度自动增加的功能,以避免因数据增加导致的频繁内存转移。顺序表以数组为存储结构,适合快速查找但不常修改的数据。程序包括SeqList.h头文件和SeqListTest.cpp测试文件。
最低0.47元/天 解锁文章
1016

被折叠的 条评论
为什么被折叠?



