栈与队列都是一种线性表存储结构 各有各的数据特点,
其中 栈的特点是先进后出,我们通常把允许插入和删除元素的一端
称为栈顶,将另一端称为栈尾。栈的结构特点决定栈可以做很多事情。
比如我们在日常生活中浏览器通常具有前一步后一步的步骤,这种结构
就是用栈实现的
队列也是一种数据结构 它的特点是允许在一端插入元素,在另一端删除元素
在允许插入元素的一端称为队尾,在另一端删除元素称为队头。
下面简单用代码增强相关知识点的记忆。
# include <iostream>
# include <stack>
# include <queue>
using namespace std;
int main()
{ //创建一个栈
stack<int> test;
//创建一个队列
queue<int> q;
//将数据压栈
for (int i = 0;i < 5; i++)
{
test.push(i);
q.push(i);
}
if (!test.empty())
printf("内容不为空\n");
cout << "栈顶元素为" << test.top() << "(注意只是返回栈顶元素,并没有删除元素)" << endl;
cout << "栈的大小为" << test.size() << endl;
//删除栈顶元素
test.pop();
cout << "出栈以后栈顶元素为" << test.top() << endl;
cout << "出栈以后栈的大小为" << test.size() << endl;
if (!q.empty())
printf("队列数据不为空\n");
cout << "队列元素首元素为" << q.front() <<"\n"
<<"队尾元素为" << q.back() << endl;
q.pop();
cout << "删除以后元素首元素为" << q.front() <<"\n"
<<"队尾元素为" << q.back() <<"\n" <<
"队列元素大小为" <<q.size() <<endl;
}
希望自己能坚持下去,无论遇到什么困难,咬牙挺过去总是好的!!!!
冲