链式存储结构的头指针和头结点
来源:互联网 发布:linux修改系统环境变量 编辑:程序博客网 时间:2024/05/18 00:29
参考:点击打开链接
定义LinkList L;
则L为链表的头指针。
此处返回给L的是一个指针,并且赋给了头指针
L->next=null; //这里说明我创建了一个头结点,即同时运用了头指针和头结点,不过感觉头结点用处不大,所以一般还是不用最好。
假设L是LinkList型变量,则L为单链表的头指针,它指向表中的第一个结点(node[0])。若L为空(L=NULL),则所表示的链表为“空”表,其长度n为0。有时我们在单链表的第一个结点之前设一个结点,称为头结点。头结点的数据域可以不存储任何信息,也可以存储如线性表的长度等类的附加信息,头结点的指针域存储指向第一结点的指针(即第一个元素结点的存储位置)。
如下图所示,单链表的头指针指向头结点。若线性表为空表,则头结点的指针域为空。
由于有个童鞋问了个问题,所以在这里插入一些话: (头指针和头结点的疑问)
链表里有“头指针”变量,它存放一个地址,该地址指向一个元素。链表里的每个元素称为“节点”。头节点是链表中第一个有效的节点,而不是用来存储第一个节点地址的头节点。头指针在链表中必须有,而头结点不一定要有。头指针作用:就是存放数组地址,也即是链表地址。头结点好处:首先它是链表中的元素,是个有效的结点;好处(1):对带头结点的链表,在链表中的任何位置插入或删除结点,要做的就是修改前一结点的指针域,因为任何结点都有前驱结点;如果链表中没有头结点,则首元素结点没有前驱,那么在其前插入或删除首元素结点时候,操作比较麻烦。好处(2):对带头结点的链表,表头指针是指向头结点的非空指针,因为空表和非空表的处理是一样的。
- 链式存储结构的头指针和头结点
- 头指针和头结点的区别
- 单链表的头结点和头指针
- 头指针和头结点
- 结构之美:单链表的头结点与头指针
- 结构之美:单链表的头结点与头指针
- 结构之美:单链表的头结点与头指针
- 线性表的链式存储实现(有头结点)
- 链表中 的 头指针 和 头结点 是不一样的
- 数据结构中的头结点和头指针
- 头指针与头结点的异同
- 链表的 头指针 头结点
- 头指针与头结点的区别
- 头指针与头结点的区别
- 线性表的链式存储结构(无头节点)
- 线性表的链式存储结构(有头节点)
- <4> 头结点、头指针、和首元结点
- 头结点,头指针,首元结点的三角恋
- sudo不能使用
- 博客今天开通了
- 远离兽性
- Android对Linux内核的改动你知道多少?
- NSBundle--获取文件路径
- 链式存储结构的头指针和头结点
- undo自动调优介绍
- Android NDK学习 <五> C++ 支持
- meta 之 viewport—手机上影响网页查看方式的神奇的“显示器”
- 争吵无益
- 不撞南墙
- Linux内核--异常和中断的区别
- BDC程序需要注意的问题!(常见问题集合)
- windows编程经典书籍