通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

单链表指针是什么

单链表的指针域指向的是下一个节点的地址,我们把指向下个节点地址的指针叫做后继指针。单链表的名列前茅个节点的存储位置叫做头指针,最后一个节点的后继指针为空 ,一般用 NULL 或者 “^” 表示。

一、单链表指针

单链表的指针域指向的是下一个节点的地址,我们把指向下个节点地址的指针叫做后继指针。单链表的名列前茅个节点的存储位置叫做头指针,最后一个节点的后继指针为空 ,一般用 NULL 或者 “^” 表示。

链式存储结构是指用一组任意的存储单元存储线性表的数据元素,通过指针连接串联起来。这里的“任意”指的就是,存储单元可以连续也可以不连续,这就意味着它们可以是内存中任何未被占用的地方。有味儿点讲就是只要内存这个厕所里空着的茅坑,你就随便蹲。链表中的存储单元叫做节点。它和数组中只存数据信息不同,每个节点分为两部分:数据域和指针域。数据域存储的数据,指针域存储着同一个表里下一个节点的位置。

延伸阅读:

二、头指针与头节点的区别

头指针,顾名思义,是指向链表名列前茅个结点的指针,如果有头结点的话,那么就是指向头结点的指针。

它是链表的必备元素且无论链表是否为空,头指针都不能为空,因为在访问链表的时候你总得知道它在什么位置,这样才能通过它的指针域找到下一个结点的位置,也就是说知道了头指针,整个链表的元素我们都是可以访问的。

所以头指针必须要存在,这也就是我们常说的标识,这也就是为什么我们一般用头指针来表示链表。

头结点,是放在名列前茅个元素的节点之前,它的数据域一般没有意义,并且它本身也不是链表必须要带的。

它的设立是单纯是为了操作的统一和方便,其实就是为了在某些时候可以更方便的对链表进行操作,有了头结点,我们在对名列前茅个元素前插入或者删除结点的时候,它的操作与其它结点的操作就统一了。

相关文章