单纯做seo能否提升网站流量,考上一级建造师很牛吗,石碣网站建设,自助单页网站双端数组#xff0c;可以对头端进行插入删除操作 deque与vector区别#xff1a; vector对于头部的插入删除效率低#xff0c;数据量越大#xff0c;效率越低 deque相对而言#xff0c;对头部的插入删除速度回比vector快 vector访问元素时的速度会比deque快,这和两者内部…双端数组可以对头端进行插入删除操作 deque与vector区别 vector对于头部的插入删除效率低数据量越大效率越低 deque相对而言对头部的插入删除速度回比vector快 vector访问元素时的速度会比deque快,这和两者内部实现有关 deque构造函数 赋值 大小 插入和删除 数据存取 排序
#includeiostream
#includevector
#includestring
#includedeque
#include algorithm
using namespace std;//只读迭代器const_iterator
void printdeque(const dequeint d)
{for (dequeint::const_iterator it d.begin(); it ! d.end(); it){//*it 100; 不可以修改cout *it ;}cout endl;
}//deque构造函数
void test01()
{//dequeT deqT; //默认构造形式//deque(beg, end); //构造函数将[beg, end)区间中的元素拷贝给本身。//deque(n, elem); //构造函数将n个elem拷贝给本身。//deque(const deque deq); //拷贝构造函数dequeintd1;d1.push_back(1);d1.push_back(1);d1.push_back(1);d1.push_back(1);printdeque(d1);dequeint d2(d1.begin(), d1.end());printdeque(d2);dequeintd3(10, 100);printdeque(d3);dequeintd4 d3;printdeque(d4);}//赋值
void test02()
{dequeint d1;for (int i 0; i 10; i){d1.push_back(i);}printdeque(d1);dequeintd2;d2 d1;printdeque(d2);dequeintd3;d3.assign(d1.begin(), d1.end());printdeque(d3);dequeint d4;d4.assign(10, 100);printdeque(d4);
}//deque大小与vector不一样deque没有容量
void test03()
{dequeint d1;for (int i 0; i 10; i){d1.push_back(i);}printdeque(d1);//判断容器是否为空if (d1.empty()){cout d1为空 endl;}else{cout d1不为空 endl;//统计大小cout d1的大小为: d1.size() endl;}//从新指定大小d1.resize(15, 1);printdeque(d1);d1.resize(5);printdeque(d1);
}//插入和删除
void test04()
{//push_back(elem); //在容器尾部添加一个数据//push_front(elem); //在容器头部插入一个数据//pop_back(); //删除容器最后一个数据//pop_front(); //删除容器第一个数据//insert(pos, elem); //在pos位置插入一个elem元素的拷贝返回新数据的位置。//insert(pos, n, elem); //在pos位置插入n个elem数据无返回值。//insert(pos, beg, end); //在pos位置插入[beg,end)区间的数据无返回值。//clear(); //清空容器的所有数据//erase(beg, end); //删除[beg,end)区间的数据返回下一个数据的位置。//erase(pos); //删除pos位置的数据返回下一个数据的位置dequeint d1;//尾插d1.push_back(10);d1.push_back(20);//头插d1.push_front(100);d1.push_front(200);printdeque(d1);//尾删d1.pop_back();//头删d1.pop_front();printdeque(d1);//插入d1.insert(d1.begin(), 100);printdeque(d1);d1.insert(d1.begin(),2, 1000);printdeque(d1);d1.insert(d1.begin(),d1.begin(), d1.end());printdeque(d1);}//数据存取
void test05()
{dequeintd1;d1.push_back(10);d1.push_back(10);d1.push_back(10);d1.push_back(10);for (int i 0; i d1.size(); i){cout d1[i] ;}cout endl;for (int i 0; i d1.size(); i){cout d1.at(i) ;}//头尾cout头d1.front();cout 尾 d1.back();}//deque排序
void test06()
{//sort(iterator beg, iterator end) //对beg和end区间内元素进行排序dequeint d;d.push_back(10);d.push_back(101);d.push_back(10);d.push_back(8);printdeque(d);sort(d.begin()1, d.end()-1);printdeque(d);}
int main()
{test01();test02();test03();test04();test05();test06();return 0;
}