链表头结点存在的意义
来源:互联网 发布:intent获取数据 编辑:程序博客网 时间:2024/06/18 15:19
数据结构中,在单链表的开始结点之前附设一个类型相同的结点,称之为头结点。头结点的数据域可以不存储任何信息,头结点的指针域存储指向开始结点的指针(即第一个元素结点的存储位置)。
作用
1、防止单链表是空的而设的。当链表为空的时候,带头结点的头指针就指向头结点。如果当链表为空的时候,单链表没有带头结点,那么它的头指针就为NULL。
2、是为了方便单链表的特殊操作,插入在表头或者删除第一个结点。这样就保持了单链表操作的统一性!
3、单链表加上头结点之后,无论单链表是否为空,头指针始终指向头结点,因此空表和非空表的处理也统一了,方便了单链表的操作,也减少了程序的复杂性和出现bug的机会。
4、对单链表的多数操作应明确对哪个结点以及该结点的前驱。不带头结点的链表对首元结点、中间结点分别处理等;而带头结点的链表因为有头结点,首元结点、中间结点的操作相同 ,从而减少分支,使算法变得简单 ,流程清晰。对单链表进行插入、删除操作时,如果在首元结点之前插入或删除的是首元结点,不带头结点的单链表需改变头指针的值,在C 算法的函数形参表中头指针一般使用指针的指针(在C+ +中使用引用 &);而带头结点的单链表不需改变头指针的值,函数参数表中头结点使用指针变量即可。
0 0
- 链表头结点存在的意义
- 链表头结点存在的意义【转】
- 链表头结点存在的意义
- 链表头结点存在的意义
- 链表头结点存在的意义
- 链表头结点存在的意义
- 链表头结点的作用
- 单链表头结点的作用
- 带表头结点的单向链表
- 链表头结点作用
- 链表头结点作用
- 链表头结点作用
- 链表头结点作用
- 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5
- 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5
- 无表头结点的有序环形链表的合并
- 单链表头指针、头结点、头元结的辨…
- 不带头结点的链表头插法C++实现
- fread fwrite read write 区别
- 重建二叉树
- Eclipse+adt+sdk配置Android开发环境
- 损失函数:Hinge Loss(max margin)
- hdu(2199)——Can you solve this equation?(浮点数二分)
- 链表头结点存在的意义
- Win10 利用 easybcd 安装 Ubuntu 14.04
- classmethod demo
- opencv学习之一简单的图片显示
- 在VS2015中配置和测试DCMTK遇到的问题
- Merge Intervals
- android stdio中的project和module的概念
- 菜鸟的Linux历程-学习大纲
- 更改hive的日志级别