C语言写单链表理解

本文详细介绍了使用指针进行动态链表的基本操作:创建、删除及插入节点的方法。通过三个指针(头指针、开辟指针、紧随指针)实现链表的构建;利用寻找指针和紧随指针完成节点的删除;通过指向待插入节点的指针、寻找指针及紧随指针来实现节点的插入。
摘要由CSDN通过智能技术生成

首相应该明白供用户使用的存储区有,

1.程序区
2.动态存储区
3.静态存储区

malloc就是创建一块动态的存储区

一、建立动态链表的精髓

  1. 建立三个指针,一个头指针,一个开辟指针,一个紧随指针。
  2. 头指针用于存放该链表的头节点地址。
  3. 开辟指针用于指向新malloc空间的头地址。
  4. 紧随指针,通知p->next域链接开辟指针所在空间的首地址。
  5. 最后紧随指针在和开辟指针站在一起,等待开辟新的空间。

二、删除动态链表的精髓

  1. 建立两个指针,一个寻找指针,一个 紧随指针。
  2. 紧随指针永远寻找指针的前面。
  3. 紧随指针->next = 寻找指针的->next域(即下一个内存块的首地址)

三,插入某个节点的精髓

  1. 建立三个指针,一个指向待插入节点的指针,一个寻找指针,一个紧随指针。
  2. 寻找指针找到要插入的地方之后,紧随指针->next指向插入节点的指针,待插入节点的指针指向紧随指针。

指针变量和指针的地址一定要弄清楚,指针指向某个地址之后,指针的地址什么??也要弄明白

这篇博客就写的这个,《结构体指针地址的问题,指针的地址疑惑的问题》,这样我觉得对指针的运用就比较好了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值