链表总结

链表总结 
1.什么是链表 
链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针。链表是是一种物理存储单元上非连续,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针接次实现的。
注:java中用引用来代替指针的使用 
链表包含两部分: 
一是数据域,二是:引用(指针域)。 
链表有三种:单链,双链表,循环链表 
单向链表:数据域+引用 
双向链表:数据域+两个引用(一个指上一个节点,一个指下一个节点) 
循环链表:数据域+引用(最后一个节点的引用指向头节点) 

2.链表的优缺点 
用链表结构可以克服数组链表需要预先知道数据大小的缺点,链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。但是链表失去了数组随机读取的优点,同时链表由于增加了结点的指针域,空间开销比较大 
3.链表的结构 
线性表的链式存储表示的特点是用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。因此,为了表示每个数据元素 与其直接后继数据元素之间的逻辑关系,对数据元素 来说,除了存储其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。由这两部分信息组成一个"结点"(如概述旁的图所示),表示线性表中一个数据元素。线性表的链式存储表示,有一个缺点就是要找一个数,必须要从头开始找起,十分麻烦。 

链表总结

你可能感兴趣的:(总结)