单链表的创建完整代码
时间: 2024-03-23 07:32:27 浏览: 20
好的,单链表是一种常见的数据结构,它由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。下面是单链表的创建完整代码:
```c++
#include <iostream>
using namespace std;
// 定义单链表节点结构体
struct ListNode {
int val;
ListNode* next;
ListNode(int x) : val(x), next(NULL) {}
};
// 创建单链表函数
ListNode* createLinkedList() {
ListNode* head = new ListNode(0); // 创建头节点
ListNode* p = head; // 定义指针p指向头节点
int x;
while (cin >> x) { // 输入节点的值,以-1结束
if (x == -1) break;
ListNode* node = new ListNode(x); // 创建新节点
p->next = node; // 将新节点插入到链表尾部
p = p->next; // 指针p指向新节点
}
return head->next; // 返回链表的头节点
}
// 打印单链表函数
void printLinkedList(ListNode* head) {
ListNode* p = head;
while (p != NULL) {
cout << p->val << " ";
p = p->next;
}
cout << endl;
}
int main() {
ListNode* head = createLinkedList(); // 创建单链表
printLinkedList(head); // 打印单链表
return 0;
}
```
在上面的代码中,我们首先定义了一个单链表节点结构体`ListNode`,其中包含一个整型数据元素`val`和一个指向下一个节点的指针`next`。然后我们定义了一个`createLinkedList`函数,用于创建单链表。在该函数中,我们首先创建了一个头节点,并定义一个指针`p`指向头节点。然后我们通过循环输入节点的值,创建新节点,并将新节点插入到链表尾部。最后返回链表的头节点。我们还定义了一个`printLinkedList`函数,用于打印单链表。在`main`函数中,我们调用`createLinkedList`函数创建单链表,并调用`printLinkedList`函数打印单链表。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)