数据结构-栈(Stack)
什么是栈?
栈(Stack):又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
通俗的来说:
我们把栈比作一个装羽毛球的球筒,球筒的两个圆底一面是可以打开的,我们可以把它叫做栈顶,一方是封闭的我们可以把它叫做栈底,这就是栈的结构。
当我们需要拿球或者装球的时候,只能从可以打开的那一面操作也就是栈的栈顶,当我们把球放进球筒的动作叫做栈的进栈、入栈或压栈,当我们从球筒把球拿出来的动作叫做栈的出栈或退栈。
特点:后进先出(LIFO),先进后出(FILO)
取东西的时候只能从栈顶取,越后面放的越靠经栈顶,越早可以取出。