上周学习的数据结构中关于栈,有下面几点,我感觉引起我的重视。
- 栈的基本操作中,基本上都是在栈顶进行的。比如在栈顶的插入,删除,栈的初始化,栈的判空(S.base == S.top),取栈顶元素等等。所以关于top指针要引起足够的重视和理解。
- 理解栈和基本线性表的之间的关系。首先,栈就是线性表,栈是一种操作受限的线性表。可以想想就是带着镣铐跳舞的感觉,所以实现的时候必须严格按照栈的定义来执行栈的操作。
- 栈不存在的条件:base = null;
- 栈为空的条件:base = top;
- 栈满的条件:top – base = stacksize;