数据结构:栈、队列、链表、树

时间:2021-10-05 10:22:13

数据结构

一、栈 栈实现的是一种先进后出的数据存储方式,类似在一个桶内放入与桶同样大小的球,先放进去的球最后才能取出来。向栈中添加元素称为insert操作,删除最上面的元素称之为pop操作。可以有多种实现方式,例如用数组实现。 堆栈的实现方法可以参考:详解堆栈的几种实现方法——C语言版 二、队列 队列实现的一种先进先出的策略,类似于在管道中,先进去的球先出来。 队列的实现方法可以参考:队列----定义和实现

三、链表 链表分为双向链表和单向链表,链表中的基本单元是节点,它包含了该节点的值以及其所链接的其他节点的地址。双向链表含有两个地址,指向该节点的前后节点,而单向链表节点只含有一个地址指向下一个节点。 链表的实现方法可以参考:链表的常见实现

四、二叉树 树可以用链表来实现,也是用一个对象来表示树的节点。一个父节点包含其自身的值、左子节点的地址和右子节点的地址。 二叉树的实现方法可以参考:二叉树的基本操作 C++代码实现