stack和queue小讲
由于stack和queue没有太多新的东西,故在此只把API拿出来小说一下,自己也记得比较牢靠一些。
stack常用API
push(int elem); //向栈顶添加元素
pop(); //从栈顶移除第一个元素
top(); //返回栈顶元素empty();//判断堆栈是否为空
size(); //返回堆栈的大小
注意一点就是,pop没有返回值,它只是单纯把栈顶元素弹出而已。在Java中的pop是弹出元素并返回这个元素,这个要清楚。如果要获取栈顶元素,那么使用top函数即可。
其它没有什么特别要讲的,见字知其意。
queue常见API
push(elem); //往队尾添加元素
pop(); //从队头移除第一个元素
back(); //返回最后一个元素
front(); //返回第一个元素
empty(); //判断队列是否为空
size(); //返回队列的大小
和stack几乎一样,但是它额外提供了访问第一个元素的方法,而stack没有访问栈底的方法。其余意思一致,
小结
- 要清楚stack和queue数据结构的不同:先进后出和先进先出。
- stack和queue都不提供遍历功能,因为它们数据结构的特殊性,只能访问特定位置的元素,因此也就不提供迭代器。