C++单向链表
时间: 2023-07-10 11:22:17 浏览: 117
C++ 单向链表是一种常见的数据结构,可以用来存储一系列元素。下面是一个简单的单向链表的实现:
```
#include <iostream>
using namespace std;
class Node {
public:
int data; // 存储数据
Node* next; // 指向下一个节点的指针
Node(int data) { // 构造函数
this->data = data;
this->next = nullptr;
}
};
class LinkedList {
public:
Node* head; // 链表头指针
LinkedList() { // 构造函数
head = nullptr;
}
void addNode(int data) { // 添加节点
Node* newNode = new Node(data);
if (head == nullptr) {
head = newNode;
return;
}
Node* curr = head;
while (curr->next != nullptr) {
curr = curr->next;
}
curr->next = newNode;
}
void printList() { // 打印链表
Node* curr = head;
while (curr != nullptr) {
cout << curr->data << " ";
curr = curr->next;
}
cout << endl;
}
};
int main() {
LinkedList list;
list.addNode(1);
list.addNode(2);
list.addNode(3);
list.printList();
return 0;
}
```
在上述实现中,我们定义了两个类 `Node` 和 `LinkedList`。其中 `Node` 类表示节点,包含一个 `data` 成员变量和一个 `next` 指针,指向下一个节点。`LinkedList` 类表示链表,包含一个 `head` 指针,指向链表头节点。
我们可以通过 `addNode` 方法向链表中添加一个新节点,通过 `printList` 方法打印整个链表。
以上仅是一个简单的单向链表的实现,实际应用中可能需要更复杂的操作,如删除节点、插入节点等。
阅读全文