头插法单链表的创建
时间: 2023-08-20 20:05:57 浏览: 81
尾插法单链表的建立
头插法是单链表的一种创建方式,也叫前插法。具体步骤如下:
1. 定义一个头结点,初始时它的 next 指针为 NULL。
2. 读入第一个节点的数据,创建一个新节点,并把头结点的 next 指针指向新节点。
3. 读入下一个节点的数据,创建一个新节点,将新节点的 next 指针指向头结点的 next 指针所指向的节点,再将头结点的 next 指针指向新节点。
4. 重复步骤3,直到读入所有节点的数据。
下面是头插法单链表的创建的 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
// 定义链表节点结构体
struct ListNode {
int val;
ListNode* next;
ListNode(int x) : val(x), next(NULL) {}
};
// 头插法创建链表
ListNode* createList() {
ListNode* head = new ListNode(-1); // 定义头结点
int x;
while (cin >> x) {
ListNode* newNode = new ListNode(x);
newNode->next = head->next; // 新节点连接到原链表的头部
head->next = newNode; // 更新头结点的 next 指针
}
return head->next;
}
// 输出链表
void printList(ListNode* head) {
while (head != NULL) {
cout << head->val << " ";
head = head->next;
}
cout << endl;
}
int main() {
ListNode* head = createList();
printList(head);
return 0;
}
```
阅读全文