C++提高编程—3、STL常用容器—Vector和deque(数组)

4 vector容器 

4.1 vector基本概念

 

 

4.2 vector构造函数

代码示例:

 

4.3 vector赋值操作

 示例代码:

4.4 vector容量和大小

 示例代码:

4.5 vector插入与删除

 

 

4.6 vector 数据存取

 

4.7 vector互换容器

实际用途:

 解决方法:

 

4.8 vector预留空间

 

总共开辟了30次空间。 如何解决呢?预留空间reserve。

5 deque容器 

5.1 deque基本概念

5.2 deque构造函数

四种示例代码如下: 

5.3 deque赋值操作

 示例代码:

总结:

5.5 deque大小操作

 

示例代码: 

 

总结:

5.5 deque插入与删除

两端插入删除:

 指定位置操作:

 

示例代码:

#include<iostream>
using namespace std;
#include <deque>
//deque容器的插入与删除
void printDeque(const deque<int>&d)
{
	for (deque<int>::const_iterator it = d.begin(); it != d.end(); it++)
	{
		cout << *it << " ";
	}
	cout << endl;
}
//两端操作
void test01()
{
	deque<int>d1;
	//尾插
	d1.push_back(10);
	d1.push_back(20);

	//头插
	d1.push_front(30);
	d1.push_front(40);
	printDeque(d1);		//40 30 10 20
	//尾删
	d1.pop_back();
	printDeque(d1);		//40 30 10
	//头删
	d1.pop_front();
	printDeque(d1);		//30 10
}

void test02()
{
	deque<int>d2;
	d2.push_back(10);
	d2.push_back(20);
	d2.push_front(30);
	d2.push_front(40);
	printDeque(d2);		//40 30 10 20
	//insert插入
	d2.insert(d2.begin(), 100);
	printDeque(d2);		//100 40 30 10 20
	d2.insert(d2.begin(),2,1000);
	printDeque(d2);		//1000 1000 100 40 30 10 20
	//按照区间进行插入
	deque<int>d1;
	d1.push_back(1);
	d1.push_back(1);
	d1.push_back(1);
	d2.insert(d2.begin(), d1.begin(), d1.end());
	printDeque(d2);  //1 1 1 1000 1000 100 40 30 10 20
}

void test03()
{
	deque<int>d1;
	//尾插
	d1.push_back(10);
	d1.push_back(20);
	//头插
	d1.push_front(30);
	d1.push_front(40);  //40 30 10 20
	//删除
	deque<int>::iterator it = d1.begin();
	it++;
	d1.erase(it);
	printDeque(d1);  //40 10 20

	//按照区间方法删除
	d1.erase(d1.begin(),d1.end()); //全部删除
}
	
int main()
{
	test03();
	system("pause");
	return 0;
}

5.6 deque数据存取

 

5.7 deque排序

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值