queue 队列容器适配器
先进先出 不允许遍历元素 queue 队列操作: size() empty()
先进先出 不允许遍历元素 queue 队列操作: size() empty()
先进后出 栈不允许遍历元素 不能随机存取 stack 栈操作: size() empty()
有 5 名选手:选手 ABCDE,10 个评委分别对每一名选手打分,去除最高分,去除评委中最低分,取平均分。 分析: 创建五名选手,放到 vector 中 遍历 vector 容器,取出来每一个选手,执行 for 循环,可以把 10 个评委打分存到 deque 容器中 sort 算法对 deque 容器中分数排序,去除最高和最低分 deque 容器遍历一遍,累加总分 获取平均分 class Player{ public: Player(string name){ m_name = name; m_avgScore = 0; } void setAvgScore(int v){ m_avgScore = v; } void printInfo()const{ cout << m_name << "的平均分为:" << m_avgScore << endl; } private: string m_name; int m_avgScore; }; void createPlayers(vector<Player> &v){ string nameSeed = "ABCDE"; for(int i = 0; i < nameSeed....
deque 容器的空间不用手动收缩,类内部会自动处理
resize() 或者 erase() 后 vector 的空间大小不会自动减小 int main() { vector<int> v; for(int i = 0; i < 100000; ++i){ v.push_back(i); } cout << "size: " << v.size() << endl; cout << "capacity: " << v.capacity() << endl; cout << "-----------------------" << endl; v.resize(10); cout << "size: " << v.size() << endl; cout << "capacity: " << v.capacity() << endl; cout << "-----------------------" << endl; vector<int>(v).swap(v); cout << "size: " << v....