数据结构之单链表
2013-05-13 17:05
225 查看
数据结构:在计算机科学中,数据结构是计算机中存储、组织数据的方式。数据结构往往决定了算法的效率。选择数据结构应首先考虑其抽象数据类型。数据结构通过编程语言所提供的数据类型、引用及其他操作加以实现。
线性表:由n(n>=0)个数据元素a[0]、a[1]、a[2]…,a[n-1]组成的有限序列。
链表:是一种常见的基础数据结构,是一种线性表,但不按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针。其在插入的时候,复杂度低;而在查找一个节点或访问特定编号的节点时,则复杂度相对较高。链表由一连串节点组成,每个节点包含任意的数据(data)和一个或两个指向另一个相同类型的数据的指针(links)。
链表的优点:数组存放数据时,必须事先定义固定长度(即元素个数),但是事先难以确定有多少个元素时,则必须把数组定义的足够大,以保证成功。无疑,这会造成内存浪费,然而,链表则可以根据需要,动态开辟内存单元。
单链表:单链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始。下面是一张单链表的图:
图1:单链表
注意根节点root只是一个指针,它不包含任何数据。root指向的节点为单链表的第一个节点,当找到第一个节点后,就可以访问剩余的所有节点。
线性表:由n(n>=0)个数据元素a[0]、a[1]、a[2]…,a[n-1]组成的有限序列。
链表:是一种常见的基础数据结构,是一种线性表,但不按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针。其在插入的时候,复杂度低;而在查找一个节点或访问特定编号的节点时,则复杂度相对较高。链表由一连串节点组成,每个节点包含任意的数据(data)和一个或两个指向另一个相同类型的数据的指针(links)。
链表的优点:数组存放数据时,必须事先定义固定长度(即元素个数),但是事先难以确定有多少个元素时,则必须把数组定义的足够大,以保证成功。无疑,这会造成内存浪费,然而,链表则可以根据需要,动态开辟内存单元。
单链表:单链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始。下面是一张单链表的图:
图1:单链表
注意根节点root只是一个指针,它不包含任何数据。root指向的节点为单链表的第一个节点,当找到第一个节点后,就可以访问剩余的所有节点。
相关文章推荐
- [PHP] 链表数据结构(单链表)
- SDUT 2120 数据结构实验之链表五:单链表的拆分
- 【数据结构】单链表(二)单链表的逆置,合并与删除
- 数据结构之单链表的整表创建头插法
- 数据结构之单链表
- 【数据结构】单链表
- 程序员面试宝典之数据结构基础----①单链表的建立、测长、打印(读后)
- 数据结构之单链表基本操作
- SDUT-数据结构实验之链表五:单链表的拆分
- 数据结构之线性表――链式存储结构之单链表(php代码实现)
- 数据结构-单链表的实现
- 数据结构 单链表的实现
- 数据结构之单链表C语言实现
- 数据结构之单链表
- 数据结构-单链表的基本操作
- 数据结构之单链表
- java中数据结构(一)单链表总结
- 数据结构之链表五:单链表的拆分
- 实战数据结构(8)_单链表的就地逆置
- 数据结构实验之链表五:单链表的拆分