常用拷贝和替换算法

痴心易碎 提交于 2019-12-09 22:49:17

1.copy:容器中指定范围内元素拷贝到另一个容器中

#include "pch.h"
#include <iostream>
#include<vector>
#include<algorithm>
#include<string>

using namespace std;

//copy

void test01() {

	vector<int> v;
	for (int i = 0; i < 10; i++) {


		v.push_back(i);
	}
	vector<int> v2;
	v2.resize(v.size());
	copy(v.begin(), v.end(), v2.begin());

}

2.replace://将容器内指定范围的旧元素修改为新元素

//replace

void test01() {

	vector<int> v;
	for (int i = 0; i < 10; i++) {


		v.push_back(i);
	}

	replace(v.begin(), v.end(), 8, 1);
	
}

3.replace_if://将容器内指定范围的满足条件的旧元素修改为新元素

//replace_if
class greater
{
public:
	bool operator()(int val) {
		return val > 30;
	}

};






void test01() {

	vector<int> v;
	for (int i = 0; i < 10; i++) {


		v.push_back(i);
	}

	replace_if(v.begin(), v.end(), greater(),3000);

}

4.swap://互换两个容器的元素

//swap

void test01() {

	vector<int> v1;
	vector<int>v2;
	for (int i = 0; i < 10; i++) {


		v1.push_back(i);
		v2.push_back(i + 100);
	}

	swap(v1, v2);

}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!