数据结构就是数据元素的排列方式或是组织方式。数据结构按照逻辑关系的不同分为线性结构和非线性结构。非线性结构又可分为树结构和图结构。线性结构又称作线性表。
根据线性表的存储结构又可分为顺序存储结构和链式存储结构。
顺序表:类似于一维数组。它的结构是连续不间断的。就像一个长方形的盒子,被分割成多段。
顺序表的操作:查找方便。删除和更改操作复杂。
链表:又分为单链表、双链表、循环链表。链表的结构:一个节点分为值域和指针域。值域是用来存储真正的数值,而指针域是用来存储指针。多个节点通过指针来连成一个链表。若节点中只有一个指针域,则称为单链表。
下图是链表的类别图。
需要注意的是单链表中的最后一个节点的指针域为Null,而循环量表中的指针域是指向第一个节点的值域。而双链表是由前后两个指针域来连接下一个节点。
链表的操作:查找复杂。插入和删除操作简单。
栈:先进后出
队列:先进先出