您的位置:首页 > 文旅 > 美景 > 辽宁网站建设推广哪家便宜_北京免费网站开发维护_百度官方免费下载安装_java成品网站

辽宁网站建设推广哪家便宜_北京免费网站开发维护_百度官方免费下载安装_java成品网站

2025/4/3 6:42:44 来源:https://blog.csdn.net/2302_78905178/article/details/146964378  浏览:    关键词:辽宁网站建设推广哪家便宜_北京免费网站开发维护_百度官方免费下载安装_java成品网站
辽宁网站建设推广哪家便宜_北京免费网站开发维护_百度官方免费下载安装_java成品网站

栈的特点:

①先进入栈的元素会放在栈的底部(先进后出
②取出元素的时候,先取出顶部元素(后进先出
③栈大小是有限的
    a.如果栈满了,不能放进元素
    b.如果栈空,不能取出元素

导入c++库stack以使用栈

#include<stack>

定义一个int类型的栈

stack <int> s;


stack的基本操作有:

1.入栈:如s.push(x);
2.出栈:如 s.pop().

注意:出栈操作只是删除栈顶的元素,并不返回该元素。
3.访问栈顶:如s.top();
4.判断栈空:如s.empty().当栈空时返回true。
5.访问栈中的元素个数,如s.size();
6.top() 返回栈顶元素,并不会移除这个元素(注意,返回的是栈顶元素的引用)

清空栈的操作:

stack<int> stk
1.循环调用pop()函数,逐个移除栈中元素,直到栈为空
2.stk = {};

#include<iostream>
#include<stack> //导入以使用栈
using namespace std;stack <int> s; //定义了一个int类型的栈int main()
{int x;for (int i = 1; i <= 4; i++){cin >> x;s.push(x); //元素入栈}int n = s.size();cout << "栈内的元素个数为" << n << endl;s.top() = 2;//直接修改栈顶元素while (!s.empty()) //当栈不为空时{cout << s.top()<<" "; //返回栈顶元素s.pop();//栈顶元素出栈(删除)}if(s.empty()) cout<< endl <<"栈为空" << endl;//当栈为空时,不能用top()函数访问栈顶元素或进行修改s.push(999);cout << s.top() << endl;cout << "----------------------------------------------------" << endl;//清空栈的操作:stack<int> stk;stk.push(1);stk.push(2);stk.push(3);stk = {};if (stk.empty()) cout << "栈为空" << endl;else cout << "栈中还有元素" << endl;return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com