美文网首页
数据结构(链表介绍)

数据结构(链表介绍)

作者: 烈焰德玛 | 来源:发表于2019-01-30 15:45 被阅读33次

链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态,换句话说,使用链表存储的数据元素,其物理存储位置是随机的。


Snip20190130_11.png

根据图中可以看出,根本无法发现各数据之间的逻辑关系,对此,链表为每个元素在存储时配备一个指针,用于指向自己的直接关系的元素.

节点

所以链表中一个数据的存储也被成为 一个节点,每个节点都由以下两个部分组成:
1.数据元素本身,所在区域成为数据域
2.指向元素的指针,所在区域成为指针域


Snip20190130_12.png

所有说链表中存储的也是一个一个的节点,真正的数据元素包含在这些节点中


Snip20190130_13.png
Snip20190130_14.png

头节点,头指针和首元节点

一个完成的链表主要由以下几个部分组成:
1.头指针:一个普通的指针,它的特点是永远指向链表第一个节点的位置。很明显,头指针用于指明链表的位置,便于后期找到链表并使用表中的数据;
2.节点:链表中的节点又细分为头节点、首元节点和其他节点:
头节点:其实就是一个不存任何数据的空节点,通常作为链表的第一个节 点。对于链表来说,头节点不是必须的,它的作用只是为了方便解决某些实际问题;
首元节点:由于头节点(也就是空节点)的缘故,链表中称第一个存有数据的节点为首元节点。首元节点只是对链表中第一个存有数据节点的一个称谓,没有实际意义;
其他节点:链表中其他的节点;

例如存储{1,2,3}的完整链表结构图:


Snip20190130_15.png

相关文章

  • Go实现双向链表 | Redis队列底层实现

    Go实现双向链表 本文介绍什么是链表,常见的链表有哪些,然后介绍链表这种数据结构会在哪些地方可以用到,以及 Red...

  • 单链表

    1.单链表## 对数据结构一直比较欠缺,所以准备i从头学习一下数据结构。从单链表开始,链表的介绍和定义就省略了,我...

  • Linux内核设计与实现笔记(6)----内核数据结构

    内核数据结构 本章介绍几种Linux内核常用的内建数据结构,其中最常用的有: 链表 队列 映射 二叉树 1. 链表...

  • 算法与数据结构知识汇总(二、链表)

    1、概念 2、链表的数据结构 单向链表的数据结构如下图: 上图数据结构为单向链表,简称单链表,该数据结构由若干个节...

  • Java链表

    一、链表介绍 数组和链表都是最基础的线性数据结构,可以用来实现栈,队列等非线性,有特定应用场景的数据结构。数组作为...

  • C++ 数据结构之链表

    链表 一、 何为链表 引用维基百科的介绍, 链表(Linked list)是一种常见的基础数据结构, 是一种线性...

  • iOS 数据结构之链表

    iOS 数据结构之链表 iOS 数据结构之链表

  • 算法题心得 - 链表

    上篇文章介绍了数组,哈希表,字符串相关的算法,这篇文章介绍另一个重要的数据结构,链表 链表特点 链表,和数组相比较...

  • Java 数据结构 单向链表

    Java 数据结构 单向链表 基础介绍 链表与循序表都是同属于数据结构中顺序表中的一种,而它与循序表的不同就在于 ...

  • 数据结构(链表介绍)

    链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态...

网友评论

      本文标题:数据结构(链表介绍)

      本文链接:https://www.haomeiwen.com/subject/islcsqtx.html