#include<iostream>
#include"assert.h"
using namespace std;
const int LIST_SIZE = 10000;//设置线性表最大存储
class list
{// 基于数组的线性表类
private:
int msize;// 表的最大长度
int numinlist;// 表中元素的实际个数
int curr;// 表中当前元素的位置
char* listarray;// 存储表元素的数组
public:
list(const int sz=LIST_SIZE); // 构造函数
~list();// 析构函数
void clear();// 从表中清除所有元素
void insert(const char&);// 在当前位置插入一个元素
void add(const char&);//在表末尾添加一个元素
char remove();// 删除并返回当前元素的值
void setFirst();// 置光标于第一个位置
void prev();// 移动光标到前一位置
void next();// 移动光标到下一位置
void setPos(const int);// 置光标于指定位置
void setValue(const char&);// 设置当前元素的值
int length() const;// 返回表的当前长度
char currValue() const;// 返回当前元素的值
bool isEmpty() const;// 如果表为空则返回TRUE
bool isInList() const; // 如果光标在表内则返回TRUE
bool find(const char&);// 从当前位置开始寻找元素值
};
list::list(const int sz )//构造函数
{
msize = sz;
numinlist = 0;
listarray =new char[sz];
}
list::~list()
{
delete[] listarray;
}
voi
线性表顺序存储C++实现
最新推荐文章于 2021-11-11 17:18:53 发布
本文介绍了使用C++实现线性表顺序存储的方法,通过一维数组来表示线性表,使得元素访问时间复杂度为�(1)。然而,线性表的插入和删除操作可能涉及大量元素的移动,平均操作次数为�(n),适合于元素位置不经常变动的情况。鼓励大家加油学习数据结构。
摘要由CSDN通过智能技术生成