单链表的创建,插入及删除(更新ing)
2023-12-26 18:40:25
?
1.单链表创建
ptr为头指针,指向头结点地址,即该指针变量的值为头结点地址;
mov为一个辅助指针,用于将链表尾节点的指针域next指向新增节点的地址.
search为一个辅助指针,用于遍历链表各节点地址,打印各节点数据;?
根据上面思路,创建一个所示单链表,代码如下:? ? ? ?
#include <stdio.h>
#include <stdlib.h>
#define Length 10
typedef struct Node{
int data;
struct Node* next;
}Node;
void create_link(Node*,Node*);
void print_link(Node*);
int main()
{
Node* ptr = NULL;//定义头指针;
Node* Head = (Node*)malloc(sizeof(Node));//定义头结点
Head->data = 0, Head->next = NULL;//头结点初始化,此处数据不使用,也可以保存链表的长度;
for(int i=1;i<=Length;i++)
{
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = i * 10; newNode->next = NULL;
create_link(Head,newNode);
}
print_link(Head);
}
void create_link(Node* Head, Node* newNode)
{
Node* mov = NULL; mov = Head;//定义辅助指针指向头结点
while(mov->next!=NULL)
{
mov = mov->next;
}
mov->next = newNode;//链表最后一个节点指针域指向新节点地址,即链表连接新节点
}
void print_link(Node* Head)
{
Node* search=Head->next;//辅助指针search指向首元结点
int d=1;
while(search!=NULL)
{
printf("Node[%d]= %d\n",d, search->data);
search = search->next;
d++;
}
}
文章来源:https://blog.csdn.net/weixin_46855342/article/details/135214477
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!