使用【C++】写【创建一个带有数据的线性表】的代码
时间: 2024-09-19 17:17:44 浏览: 39
线性表C++源码.rar
在C++中,我们可以使用数组或者动态内存分配的数据结构如`std::vector`或自定义链表来创建一个带有数据的线性表。这里我将给出如何使用`std::vector`作为例子,因为它是一个简单且常用的容器:
```cpp
#include <iostream>
#include <vector>
// 定义线性表的数据结构,比如可以存储整数
struct Node {
int data;
Node* next; // 指向下一个元素的指针
};
// 创建一个线性表类
class LinearList {
private:
std::vector<Node*> elements; // 存储节点的动态数组
public:
// 构造函数
LinearList() : elements(0) {}
// 添加新元素到列表末尾
void addElement(int value) {
Node* newNode = new Node();
newNode->data = value;
newNode->next = nullptr;
if (elements.empty()) { // 如果列表为空,直接添加头结点
elements.push_back(newNode);
} else {
elements.push_back(newNode); // 否则添加到末尾
elements[elements.size() - 1]->next = nullptr; // 更新最后一个节点的next指针
}
}
// 打印列表内容
void printList() {
for (Node* node : elements) {
if (node != nullptr) {
std::cout << "Data: " << node->data << "\n";
} else {
break; // 避免访问已删除的元素
}
}
}
~LinearList() { // 析构函数释放内存
for (Node* node : elements) {
delete node;
}
elements.clear();
}
};
int main() {
LinearList list;
list.addElement(10);
list.addElement(20);
list.addElement(30);
std::cout << "Linear List Elements:\n";
list.printList();
return 0;
}
```
阅读全文