一.填空题
1. (填空题)返回栈顶元素的引用,即最后一个进入stack容器适配器的元素函数是()。
2. (填空题)算法中的( )函数属于非可变序列算法,用于在指定区间查找某一元素是否存在。
3. (填空题)set与multiset获取容器实际元素个数的函数是:( )
4. (填空题)vector用于从尾部添加元素的函数是( );删除尾部元素的函数是()。
5. (填空题)序列容器有连续存储和( )存储两种存储方式。
二.程序题
1. (程序题)
创建整型数据set集合,向set依次插入数据23,56,18,23,79,56;使用迭代器输出set集合的数据并观察结果;查找集合中是否存在值56和99;删除集合第一个元素并插入数值88后输出数据。
注意:集合数据输出后有一个半角空格。
2.(程序题)
使用map容器对数字10~15映射英文单词A~F,并在控制台输出。
🎯答案:
1:top()函数
2:find()
3:size()
4:(1) push_back() (2) pop_back()
5:链式
程序题1:
#include <bits/stdc++.h> using namespace std; int main() { vector<int> v; vector<int>::iterator pos; v.push_back(98); v.push_back(34); v.push_back(56); v.push_back(78); v.push_back(23); for(pos=v.begin(); pos!=v.end(); ++pos) cout<<*pos<<" "; cout<<endl; v.insert(v.begin()+2,58); v.erase(v.end()-1); for(pos=v.begin(); pos!=v.end(); ++pos) cout<<*pos<<" "; cout<<endl; sort(v.begin(),v.end()); for(pos=v.begin(); pos!=v.end(); ++pos) cout<<*pos<<" "; cout<<endl; reverse(v.begin(),v.end()); for(pos=v.begin(); pos!=v.end(); ++pos) cout<<*pos<<" "; cout<<endl; return 0; }
程序题2:
#include <bits/stdc++.h> using namespace std; int main() { list<int> lt; list<int>::iterator it; lt.push_front(34); lt.push_front(56); lt.push_front(78); lt.push_back(23); lt.push_back(98); lt.push_back(99); int max=*(lt.begin()); for(it=lt.begin(); it!=lt.end(); it++) { if(max<*it) max=*it; cout<<*it<<" "; } cout<<endl; cout<<"max="<<max<<endl; lt.remove(98); lt.sort(); for(it=lt.begin(); it!=lt.end(); it++) cout<<*it<<" "; cout<<endl; return 0; }