数据结构:栈和队列的总结回顾
2015-02-10 16:49
274 查看
栈和队列都是线性表:
栈和队列,它们都是特殊的线性表,只不过对插入和删除操作做了限制。
栈:限定仅在表尾进行插入和删除操作的线性表。
队列:只允许在一端进行插入操作,而在另一端进行删除操作的线性表。
栈和队列的顺序存储结构:
它们都可以用线性表的顺序存储结构实现,但都存在着顺序存储的一些弊端,因此它们各自有一些技巧解决这个问题。
对于栈来说,如果两个相同数据类型的栈,则可以用数组的两端作栈底的方法让两个栈共享数据,最大化利用数组的空间。
对于队列来说,为了避免数组插入和删除时需要移动数据,引入循环队列,使得本来插入和删除是O(n)的时间复杂度变成了O(1)。
栈和队列的链式存储结构:
栈和队列的链式存储结构的实现原理和线性表的实现原理基本上相同。
栈和队列,它们都是特殊的线性表,只不过对插入和删除操作做了限制。
栈:限定仅在表尾进行插入和删除操作的线性表。
队列:只允许在一端进行插入操作,而在另一端进行删除操作的线性表。
栈和队列的顺序存储结构:
它们都可以用线性表的顺序存储结构实现,但都存在着顺序存储的一些弊端,因此它们各自有一些技巧解决这个问题。
对于栈来说,如果两个相同数据类型的栈,则可以用数组的两端作栈底的方法让两个栈共享数据,最大化利用数组的空间。
对于队列来说,为了避免数组插入和删除时需要移动数据,引入循环队列,使得本来插入和删除是O(n)的时间复杂度变成了O(1)。
栈和队列的链式存储结构:
栈和队列的链式存储结构的实现原理和线性表的实现原理基本上相同。
相关文章推荐
- 数据结构--链表、栈、队列存储结构总结
- 总结回顾 - 数据结构和算法98(完)
- 【数据结构】回顾表、栈、队列
- 数据结构(十七)赫夫曼树 树总结回顾
- 数据结构----数组队列和链表的总结和心得
- 数据结构总结(一):一种特殊的有序队列
- 数据结构习题回顾与总结 (2) List Leaves
- Java基础课程学习总结,使用LinkedList简单模拟队列数据结构和堆栈数据结构的实现
- 数据结构学习总结(四)队列和栈
- 数据结构总结之一栈与队列
- 《数据结构(C语言版)》严蔚敏第4版读书总结与数据结构入门回顾
- 《数据结构》第三章:栈和队列——>总结
- 数据结构回顾之顺序存储结构中的线性表(栈与队列顺序线性表实现)
- 【数据结构】回顾优先队列(堆)
- 【数据结构】回顾优先队列(堆)
- [数据结构]对链表、栈、队列的总结
- 《数据结构》第三章-栈和队列学习总结
- 《数据结构》第3章 栈和队列 知识点总结导图
- 数据结构与算法总结3_常用的数据结构(背包,栈和队列)
- JavaScript学习总结(二十一)——使用JavaScript的数组实现数据结构中的队列与堆栈