栈存储数据的方式跟数组一样,都是将元素排成一行。只不过它还有以下3条约束。“LIFO”(last in,first o)后进先出
- 只能在末尾插入数据。
- 只能读取末尾的数据。
- 只能移除末尾的数据。
栈很少用于需要长期保留数据的场景,却常用于各种处理临时数据的算法。
当数据的处理顺序要与接收顺序相反时(LIFO),用栈就对了。
与栈类似,队列也有3个限制(但内容不同)。“FIFO”(first in,first out)先进先出
- 只能在末尾插入数据(这跟栈一样)。
- 只能读取开头的数据(这跟栈相反)。
- 只能移除开头的数据(这也跟栈相反)。