2.3 线性表的链式表示和实现

举报
C语言入门到精通 发表于 2021/02/26 02:01:22 2021/02/26
【摘要】 01线性链表1、线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(可以连续,也可以不连续)。2、为了表示每个数据元素ai与器直接后继数据元素a(i+1)之间的逻辑关系,对数据元素ai来说,除了存储本身的信息之外,还需要存储一个指示其直接后继的信息。3、以上两部分信息组成数据元素ai的额存储映像,称为结点。它包括两个域,其中存储数据元素信息的域称为数据域,存储...

01线性链表


1、线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(可以连续,也可以不连续)。

2、为了表示每个数据元素ai与器直接后继数据元素a(i+1)之间的逻辑关系,对数据元素ai来说,除了存储本身的信息之外,还需要存储一个指示其直接后继的信息。

3、以上两部分信息组成数据元素ai的额存储映像,称为结点。它包括两个域,其中存储数据元素信息的域称为数据域,存储直接后继存储位置的域称为指针域。

4、指针域中存储的信息称做指针或链。n个结点链结成一个链表,即线性表的链式存储结构。

5、由于链表大的每个结点中只包含一个指针域,故又称为线性链表或单链表。


02循环链表


1、循环链表是另一种形式的链式存储结构。

2、循环链表的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环。

3、循环链表的操作和线性链表基本一致,差别仅在于算法中的循环条件是否等于头指针。

4、有些时候,若在循环链表中设立尾指针而不设头指针,可使某些操作简化。例如将两个线性表合并成一个表时,仅需将一个表的表尾和另一表的表头相接。


03双向链表


1、双向链表的结点中有两个指针域,其一指向直接后继,另一指向直接前趋。

2、和单链的循环表类似,双向链表也可以有循环表。

3、在双向链表中,有些操作仅需涉及一个方向的指针,则它们的算法描述和线性链表的操作相同,但在插入,删除时有很大的不同,在双向链表中需同时修改两个方向上的指针。

如果您觉得以上对您有作用,请分享给更多的人,点一下赞就是最大支持!

C语言 | 三目运算实现判断大写 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/334689678

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。