链表
2015-11-30 13:55
225 查看
链表是一种非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针实现的。
链表由一系列结点组成,每个结点包括两个部分:数据域、指针域。
提到链表,就不能不提数组。正是数组的缺点,才彰显了链表的价值。
数组缺点:
数组的大小要事先规定;
数组的空间可能存在浪费;
数组的插入和删除操作消耗很多资源。
链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理,但是链表失去了数组随机读取的优点。
单向链表
单向链表有一个头结点head,指向链表在内存中的首地址。每一个节点的数据类型是结构体类型。
无论访问哪一个节点,都需要从链表头开始顺序地向后查找。链表的尾节点的指针域为NULL。
链表由一系列结点组成,每个结点包括两个部分:数据域、指针域。
提到链表,就不能不提数组。正是数组的缺点,才彰显了链表的价值。
数组缺点:
数组的大小要事先规定;
数组的空间可能存在浪费;
数组的插入和删除操作消耗很多资源。
链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理,但是链表失去了数组随机读取的优点。
单向链表
单向链表有一个头结点head,指向链表在内存中的首地址。每一个节点的数据类型是结构体类型。
无论访问哪一个节点,都需要从链表头开始顺序地向后查找。链表的尾节点的指针域为NULL。
相关文章推荐
- 中东冲突点燃军工概念股心中的一把火
- JSON详解
- OMPL138及U-Boot的启动过程分析(四)
- iOS 数据库离线缓存思路和网络层封装
- Android开发-UI控件:PullToRefresh(ListView GridView下拉刷新)的简单使用
- UIActivityIndicatorView用法
- 贾平凹《秦腔》小记 - 时代变迁下的秦腔与人
- 移动端 jquery 长按触发移动事件 <升级版>
- ubunut无法连接有线网络上网,在windows下可以连接网络
- Android OkHttp完全解析
- Android开发-刮刮卡效果
- 运算符优先级-Java 运算符优先级
- IntelliJ IDEA 使用心得与常用快捷键
- ASP.NET MVC 5 访问在views文件夹中的JS文件。 ASP.NET MVC html与JS分离
- jQuery动态操作表单
- SAP本地化-银企直连
- C#随机数生成器(支持数字跳变)
- rabbitmq-ConfirmListener
- rabbitmq-exclusive queue
- rabbitmq-queueDelete