C++/C stack栈,set集和,queue队列的基本操作
2022/1/2 20:09:39
本文主要是介绍C++/C stack栈,set集和,queue队列的基本操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、Set集合
set可以自动去重和排序(当向一个set集和中插入元素时,它可以自动的去掉重复的元素,并且自动排序)
set的基本操作
1、s.insert()插入元素
2、s.begin()头元素
3、s.end()尾元素
4、s.erase()删除某个元素
5、s.size()集和的大小
#include<iostream> #include<stack> #include<set> using namespace std; int main(){ set<int> s; int a[10]={1,2,4,1,2,3,10,9,10,10}; for(int i=0;i<10;i++){ s.insert(a[i]); } // 遍历set中的元素 set<int>::iterator it; for(it = s.begin();it != s.end();it++){ cout<<*it<<" "; } cout<<endl; // 删除set中的10 s.erase(10); for(it = s.begin();it != s.end();it++){ cout<<*it<<" "; } cout<<endl; return 0; }
二、栈的基本操作
栈是一种先进后出的线性表(最先入栈的元素,可能会最后出来)
1、s.pop()弹出栈顶元素但是不返回值
2、s.top()返回栈顶元素
3、s.empty()判断栈是否为空
4、s.push(n)元素入栈
#include<iostream> #include<stack> #include<set> using namespace std; int main(){ stack<int>s; int a[10]={1,2,3,4,5,6,7,8,9,10}; for(int i=0;i<10;i++){ // 元素入栈 s.push(a[i]); } while(!s.empty()){ //取出栈顶元素 cout<<s.top()<<" "; //弹出栈顶元素,但是 不返回值 s.pop(); } cout<<endl; return 0; }
三、Queue队列
队列是一种先进先出的数据结构,在队尾插入元素,在队首弹出。
1、s.push()在队尾插入元素
2、s.front()对头元素
3、s.back()对尾元素
4、s.size()队列的大小
5、s.empty()队列是否为空
#include<iostream> #include<queue> using namespace std; int main(){ int a[10]={1,2,3,4,5,6,7,8,9,10}; queue<int> s; //入队列 for(int i=0;i<10;i++){ s.push(a[i]); } // 头元素 cout<<s.front()<<endl; //尾元素 cout<<s.back()<<endl; //队列中元素的个数 cout<<s.size()<<endl; //遍历队列中元素 while(!s.empty()){ cout<<s.front()<<" "; s.pop(); } cout<<endl; return 0; }
这篇关于C++/C stack栈,set集和,queue队列的基本操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01lip-sync公司指南:一文读懂主要玩家和技术
- 2024-11-01Anthropic的新RAG方法——提升大型语言模型在特定领域的表现
- 2024-11-01UniApp 中组件的生命周期是多少-icode9专业技术文章分享
- 2024-11-01如何使用Svg Sprite Icon简化网页图标管理
- 2024-10-31Excel数据导出课程:新手从入门到精通的实用教程
- 2024-10-31Excel数据导入课程:新手入门指南
- 2024-10-31RBAC的权限课程:新手入门教程
- 2024-10-31Svg Sprite Icon课程:新手入门必备指南
- 2024-10-31怎么配置 L2TP 允许多用户连接-icode9专业技术文章分享
- 2024-10-31怎么在FreeBSD上 安装 OpenResty-icode9专业技术文章分享