创建程序文件exp1-2.cpp,实现单链表存储及其基本操作后,完成线性表链表的逆置操作。
时间: 2024-10-04 10:00:54 浏览: 60
实验1-2 线性表-单链表.doc
创建名为"exp1-2.cpp"的程序文件,通常用于实现单链表的数据结构和相关的操作。首先,你需要包括必要的头文件,如`iostream`、`list`或者自定义的链表头文件。以下是基本步骤:
1. 定义链表节点的结构体:
```cpp
struct ListNode {
int data;
ListNode* next;
ListNode(int val = 0) : data(val), next(nullptr) {}
};
```
2. 实现单链表的基本操作,如插入节点、删除节点和打印链表:
```cpp
ListNode* insertNode(ListNode* head, int val) {
// 插入节点函数
}
void deleteNode(ListNode*& head, int val) {
// 删除节点函数
}
void printList(ListNode* head) {
// 打印链表函数
}
```
3. 完成链表逆置的操作:
```cpp
ListNode* reverseList(ListNode* head) {
ListNode* prev = nullptr;
ListNode* curr = head;
ListNode* nextTemp;
while (curr != nullptr) {
nextTemp = curr->next; // 保存当前节点的下一个节点
curr->next = prev; // 将当前节点指向prev
prev = curr; // 移动prev到当前节点
curr = nextTemp; // 移动curr到下一个节点
}
return prev; // 返回新的头节点
}
```
4. 主函数中,你可以创建一个链表,然后调用上述函数来逆置它,并检查结果:
```cpp
int main() {
// 创建链表并调用逆置操作
// ...
// 打印逆置后的链表
printList(reverseList(head));
return 0;
}
```
阅读全文