掌握以下知识有助于你理解这篇文章:
1.顺序表的概念
2.c语言数组的理解
3.计算机组成原理什么的
///分割线
如果你不理解C语言数组的存储原理,没关系,我这里简单说一下。C语言的数组是典型的顺序表。C语言的数组是预先分配一段连续的内存,然后内存单元连续,如果从图像表示就是这样:
什么是单链表?
我复制了百度百科的定义:
单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。
读不懂没关系,我刚学也读不懂,书面+抽象的语言就不是给人读懂的。现在请你忘记上面这段话,把教程读完再回来尝试理解它。
///分割线:教程正式开始//
最简单的单链表(格子中的箭头是指向符号):
你可以在草稿纸上实现它。如果此时有人问你,上面这个为什么它不是顺序表,你可以大声的告诉他,“我规定了存放214数字的格子后跟着的是存放着56数字的格子…以此类推,所以这是单链表”
我们一定要把这些数字紧