数据结构实现表顺序 SeqList 类
时间: 2024-11-15 16:23:09 浏览: 0
数据结构顺序表,c语言简单实现
SeqList(序列列表)是一种简单的线性数据结构,通常用于模拟数组或动态数组的行为。它的实现可以基于数组,提供基本的操作如插入、删除和查找。下面是一个基础的 SeqList 类的简单示例(这里假设 C++ 语言为例):
```cpp
class SeqList {
private:
int* data; // 存储元素的数组
int size; // 当前元素的数量
int capacity; // 数组的最大容量
public:
// 构造函数,初始化一个空的 SeqList,初始容量为10
SeqList() : data(new int[10]), size(0), capacity(10) {}
// 插入元素到列表末尾
void push_back(int value) {
if (size == capacity) {
resize(capacity * 2); // 如果满,扩容一倍
}
data[size++] = value;
}
// 删除指定索引处的元素
void remove_at(int index) {
if (index < 0 || index >= size) {
throw std::out_of_range("Index out of range");
}
for (int i = index; i < size - 1; ++i) {
data[i] = data[i + 1];
}
--size;
}
// 查找元素,返回元素的位置,如果不存在则返回 -1
int find(int value) const {
for (int i = 0; i < size; ++i) {
if (data[i] == value) {
return i;
}
}
return -1;
}
// 扩容操作
void resize(int new_capacity) {
int* newData = new int[new_capacity];
for (int i = 0; i < size; ++i) {
newData[i] = data[i];
}
delete[] data;
data = newData;
capacity = new_capacity;
}
// 释放内存
~SeqList() {
delete[] data;
}
};
```
阅读全文