C++顺序表储存结构代码
时间: 2024-09-24 10:20:34 浏览: 45
C++顺序表例子
在C++中,我们可以创建简单的顺序表(也称为线性表)来存储元素。这里是一个基本的单向链表的实现作为顺序表的例子:
```cpp
#include <iostream>
// 定义节点结构体
struct Node {
int data; // 数据域
Node* next; // 指针域,指向下一个节点
};
// 创建一个新的节点
Node* createNode(int value) {
Node* newNode = new Node;
if (newNode != nullptr) {
newNode->data = value;
newNode->next = nullptr;
}
return newNode;
}
// 插入节点到列表的头部
void insertAtBegin(Node** head, int value) {
Node* newNode = createNode(value);
if (*head != nullptr) {
newNode->next = *head;
} else {
*head = newNode;
}
}
// 打印顺序表(仅示例,实际应用中可能需要遍历)
void printList(Node* head) {
while (head != nullptr) {
std::cout << head->data << " ";
head = head->next;
}
std::cout << std::endl;
}
int main() {
Node* head = nullptr;
insertAtBegin(&head, 5); // 插入5
insertAtBegin(&head, 2); // 插入2
insertAtBegin(&head, 8); // 插入8
std::cout << "OrderedList: ";
printList(head);
return 0;
}
```
这个例子展示了如何使用`Node`结构体创建一个顺序表,并实现了插入节点和打印列表的操作。然而,这个简单版本的顺序表不是真正的顺序访问(O(1)),因为每次插入或删除都需要移动其他节点,所以效率较低。
阅读全文