栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据结构-第二章(5)-链式存储结构

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据结构-第二章(5)-链式存储结构

数据结构

⚡️数据结构-第一章
⚡️抽象数据类型案例
⚡️数据结构-第二章(1)-线性结构
⚡️数据结构-第二章(2)-线性表的顺序表示和实现
⚡️数据结构-第二章(3)-顺序表(含代码)
⚡️数据结构-第二章(4)-顺序表案例(含代码)

数据结构-第二章(5)-链式存储结构
  • 数据结构
  • 链式存储结构
    • 与链式存储相关的术语
    • 单链表、双链表、循环链表
    • 小结
  • 总结

链式存储结构

  • 用一组任意的存储单元存储线性表的数据元素
  • 这组存储单元可以是连续的,也可以是不连续的,甚至是零散的分布在内存的任意位置上的。
  • 链表中元素的逻辑次序与物理次序不一定相同

例如:

那怎么表示数据元素之间的逻辑关系呢?

答:可以在存储自己内容的同时也存储下一个元素的地址。存储数据元素的域称为数据域,存储直接后继位置的域称为指针域。指针域中存储的信息称作指针或链。这两部分信息组成ai的存储映象称为结点(Node)。n个结点(ai(1≤i≤n)的存储映象链结成一个链表,即为线性表。把链表中第1个结点的存储位置叫头指针。最后一个元素意味着没有直接后继规定最后一个结点指针为空(通常用NULL或^表示)

与链式存储相关的术语

单链表、双链表、循环链表

  • 为了更加方便对链表进行操作,会在单链表的第1个结点前附设一个头结点.头结点的数据域可以不存储任何信息,也可以存储如线性表的长度等附加信息,头结点的指针域存储指向线性表第1个元素的结点。

单链表由头指针唯一确定,因此单链表可用头指针名字来命名。

讨论1:如何表示空表

讨论2:在链表中设置头结点有什么好处?

①有了头结点,对在第一元素结点前插入结点和删除第一结点,其操作与其它结点的操作就统一了
②便于空表和非空表的统一处理
当链表不设头结点时,假设L为单链表的头指针,它应该指向首元结点,则当单链表为长度n为0的空表时,L指针为空(判定空表的条件可记为:L == NULL)。增加头结点后,无论链表是否为空,头指针都是指向头结点的非空指针。头指针指向头结点。若为空表,则头结点的指针域为空(判定空表的条件可记为:L ->next == NULL)
简述为:

讨论3:头结点的数据域内装的是什么?

链表(链式存储结构)的特点:

小结

总结

期待大家和我交流,留言或者私信,一起学习,一起进步!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/600895.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号