您的位置:首页 > 理论基础 > 数据结构算法

数据结构之单链表

2013-05-13 17:05 225 查看
数据结构:在计算机科学中,数据结构是计算机中存储、组织数据的方式。数据结构往往决定了算法的效率。选择数据结构应首先考虑其抽象数据类型。数据结构通过编程语言所提供的数据类型、引用及其他操作加以实现。

线性表:由n(n>=0)个数据元素a[0]、a[1]、a[2]…,a[n-1]组成的有限序列。

链表:是一种常见的基础数据结构,是一种线性表,但不按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针。其在插入的时候,复杂度低;而在查找一个节点或访问特定编号的节点时,则复杂度相对较高。链表由一连串节点组成,每个节点包含任意的数据(data)和一个或两个指向另一个相同类型的数据的指针(links)。

链表的优点:数组存放数据时,必须事先定义固定长度(即元素个数),但是事先难以确定有多少个元素时,则必须把数组定义的足够大,以保证成功。无疑,这会造成内存浪费,然而,链表则可以根据需要,动态开辟内存单元。

单链表:单链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始。下面是一张单链表的图:



图1:单链表
注意根节点root只是一个指针,它不包含任何数据。root指向的节点为单链表的第一个节点,当找到第一个节点后,就可以访问剩余的所有节点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: