stack&queue

stack

stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口,形式如图所示。stack容器允许新增元素,移除元素,取得栈顶元素,但是除了最顶端外,没有任何其他方法可以存取stack的其他元素。换言之,stack不允许有遍历行为。

有元素推入栈的操作称为:push,将元素推出stack的操作称为pop.

image-20240317162846796

stack没有迭代器

Stack所有元素的进出都必须符合”先进后出”的条件,只有stack顶端的元素,才有机会被外界取用。Stack不提供遍历功能,也不提供迭代器。

stack构造函数

stack stkT;//stack采用模板类实现, stack对象的默认构造形式:

stack(const stack &stk);//拷贝构造函数

stack数据存取操作

push(elem);//向栈顶添加元素 pop();//从栈顶移除第一个元素 top();//返回栈顶元素

stack大小操作

empty();//判断堆栈是否为空 size();//返回堆栈的大小

queue

Queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口,queue容器允许从一端新增元素,从另一端移除元素。

image-20240317164148445

queue没有迭代器

Queue所有元素的进出都必须符合”先进先出”的条件,只有queue的顶端元素,才有机会被外界取用。Queue不提供遍历功能,也不提供迭代器。

queue构造函数

queue queT;//queue采用模板类实现,queue对象的默认构造形式:

queue(const queue &que);//拷贝构造函数

queue存取、插入和删除操作

push(elem);//往队尾添加元素

pop();//从队头移除第一个元素

back();//返回最后一个元素

front();//返回第一个元素

queue赋值操作

queue&operator=(const queue &que);//重载等号操作符

queue大小操作

empty();//判断队列是否为空 size();//返回队列的大小