- 什么是栈(后进先出LIFO,last in first out)
(使用指针的简单数据结构来表示动态集合。基本的结构就有:栈、队列、链表、有根树)
栈是限定在一端进行插入和删除运算的线性表。
栈具有记忆作用,因为,它能记住谁是后进来的,然后有后进先出。 - 栈的几种操作以及代码:
STACK-EMPTY(S) //测试一个栈是否为空
if S.top == 0
return TRUE
else return FALSE
PUSH(S,x) //压入,栈上的insert操作
S.top = S.top + 1
S[S.top] = x
POP(S)
if STACK-EMPTY(S) //弹出,无元素参数的delete操作
error"underflow" //如果是空栈,再来做弹出操作,就会栈下溢
else S.top = S.top - 1
return S[S.top +1]
-
入栈的时间复杂度
-
出栈入栈
-
栈的初始化以及操作
。。。看不懂,不知道重点在哪