🎃個人專欄:
🐬 算法設計與分析:算法設計與分析_IT閆的博客-CSDN博客
🐳Java基礎:Java基礎_IT閆的博客-CSDN博客
🐋c語言:c語言_IT閆的博客-CSDN博客
🐟MySQL:數據結構_IT閆的博客-CSDN博客
🐠數據結構:??????數據結構_IT閆的博客-CSDN博客
💎C++:C++_IT閆的博客-CSDN博客
🥽C51單片機:C51單片機(STC89C516)_IT閆的博客-CSDN博客
💻基于HTML5的網頁設計及應用:基于HTML5的網頁設計及應用_IT閆的博客-CSDN博客??????
🥏python:python_IT閆的博客-CSDN博客
歡迎收看,希望對大家有用!
目錄
一. 單選題
二.程序題
1.?(程序題)
2.?(程序題)
?🎯答案:
一. 單選題
1.?(單選題)下列選項中, 不屬于vector容器操作方法的是( )
A. emplace_ back
B. pop_ back
C. insert
D. push_front
2.?(單選題)關于迭代器,下列說法錯誤的是:
A. 刪除容器中的元素,可能會使原有迭代器失效
B. 反向迭代器可以從容器尾部向容器首部進行迭代
C. vector容器的iterator迭代器是隨機迭代器
D. 迭代器就是指針
3.?(單選題)關于queue容器適配器,下 列描述正確的是( )
A. queue 具有先入后出的特點
B. queue 可以一次刪除多個元素
C. queue不支持迭代器操作
D. queue不支持pop()方法
4.?(單選題)下列選項中,屬于可變序列算法的是:
A. for_each()
B. sort()
C. accumulate()
D. find()
5.?(單選題)下列選項中,可以正向遍歷容器元素,但通過只能訪問容器元素,不能修改元素的值的迭代器是:
A. iterator
B. const_iterator
C. reverse_iterator
D. const_reverse_iterator
二.程序題
1.?(程序題)
.創建整型數據的vector可變長數組,向vector尾部插入數據98,34,56,78,23;使用迭代器輸出vector,插入值58到第3個位置,刪除最后一個元素后輸出vector;使用sort函數對數組進行從小到大排序并輸出;使用reverse方法將元素翻轉并輸出。
元素翻轉函數:reverse(v.begin(),v.end());
注意:每行數據輸出后有一個半角空格。
2.?(程序題)
創建整型數據的List實現雙向鏈表,向鏈表頭部依次插入數據34,56,78;向鏈表尾部依次插入數據23,98,99;使用迭代器輸出鏈表,輸出鏈表的最大值,刪除數值98;使用sort函數對數組進行從小到大排序并輸出。
?? ??List排序函數:list.sort();
? ? ?注意:第一、三行數據輸出后有一個半角空格。
? ?
?🎯答案:
1-5:DDCBB
程序題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;}