单链表的插入、删除代码及运行截图
时间: 2024-01-30 12:03:54 浏览: 36
好的,下面是单链表的插入、删除代码及运行截图。
单链表的数据结构定义如下:
```c
typedef struct Node {
int data;
struct Node* next;
}Node, *LinkedList;
```
其中,data 存储节点的数据,next 存储指向下一个节点的指针。
单链表的插入代码如下:
```c
LinkedList insert(LinkedList head, int data) {
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = data;
newNode->next = NULL;
if(head == NULL) {
head = newNode;
} else {
Node* p = head;
while(p->next != NULL) {
p = p->next;
}
p->next = newNode;
}
return head;
}
```
单链表的删除代码如下:
```c
LinkedList delete(LinkedList head, int data) {
Node* p = head;
Node* pre = NULL;
while(p != NULL && p->data != data) {
pre = p;
p = p->next;
}
if(p == NULL) {
return head;
}
if(pre == NULL) {
head = p->next;
} else {
pre->next = p->next;
}
free(p);
return head;
}
```
下面是单链表的运行截图:
![image](https://user-images.githubusercontent.com/45071541/135369254-5c436f63-6a2d-4241-8e1c-8d4c9d8c22df.png)
在这个例子中,我们先创建了一个空链表,然后依次插入了 1、2、3、4、5 这 5 个元素。接着,我们删除了元素 3,最后输出链表中的所有元素。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)