What is Stack、Queue?
- 栈(Stack)又名堆栈;
- 队列(Queue);
堆栈的特点:
由于堆栈的栈和蘸碟的蘸同音,可以想象去火锅店吃饭,调味台上有一摞蘸碟,你是不是只能从顶上的蘸碟拿起,这就是堆栈的特点:后进先出。
队列的特点:
队列就是类似排队的数据结构,比如排队打饭,先排队的先打到饭(非常的直观)。所以队列的特点:先进先出。
两者的一些相同点
- 都是抽象的数据结构,它只是规定了需要的操作,底层使用什么基础结构实现,它不管。使用数组、集合...去实现都无所谓,只要实现它的特点就行;
- 通常用来存储一些临时数据,这些临时的数据进了这个结构后,就必须要按照这个“先进先出”or“后进先出”的特点去读取;
应用场景
栈:
- 撤回操作
- 语法检查器
队列
- 一些类似排队的场景
- 处理异步请求