队列
队列指的是first come first out的数据结构。和栈类似,不过栈对应的是first come last out。
针对队列的操作有:
- 入栈,push
- 出栈, pop
category
队列也可以细分很多种类型
-
从内存布局可以分为
- 顺序队列
- 基于数组实现
- 可扩容的顺序队列
- 不可扩容的顺序队列
- 基于数组实现
- 链式队列
- 基于链表实现
- 循环队列
- 一般基于数组实现即可
- 顺序队列
-
从操作方式可以分为
- 阻塞队列–其实就是在普通队列上面加上阻塞操作
- 队列满的时候,无法插入新的节点,阻塞直到有空闲位置才能插入
- 队列空的时候,获取数据会被阻塞,直到队列有新的数据才能返回
- 并发队列
- 使用锁实现线程安全
- 使用CAS等手段实现无锁高效操作
- 阻塞队列–其实就是在普通队列上面加上阻塞操作