头文件是 C++ 标准库中的一个头文件,提供了许多常用的算法函数。除了 erase 之外, 头文件还包含了以下一些重要的函数:
1、排序算法:
sort:对容器进行排序。
#include <iostream>
#include <algorithm>
# include <vector>
using namespace std;
int main() {
vector<int> nums = {4, 2, 1, 3, 5};
sort(nums.begin(), nums.end()); //默认升序
for (int num : nums) {
cout<<num<<" ";
}
return 0;
}
降序:
#include <iostream>
#include <algorithm>
# include <vector>
using namespace std;
int main() {
vector<int> nums = {4, 2, 1, 3, 5};
sort(nums.begin(), nums.end(), greater<int>()); //降序
for (int num : nums) {
cout<<num<<" ";
}
return 0;
}
定义一个比较函数:
#include <iostream>
#include <algorithm>
# include <vector>
using namespace std;
int compare (int a, int b) {
return a > b; //降序
}
int main() {
vector<int> nums = {4, 2, 1, 3, 5};
sort(nums.begin(), nums.end(), compare);
for (int num : nums) {
cout<<num<<" ";
}
return 0;
}
降序匿名函数写法:
#include <iostream>
#include <algorithm>
# include <vector>
using namespace std;
//int compare (int a, int b) {
// return a > b; //降序
//}
int main() {
vector<int> nums = {4, 2, 1, 3, 5};
sort(nums.begin(), nums.end(), [](int a, int b){
return a>b;
});
for (int num : nums) {
cout<<num<<" ";
}
return 0;
}
stable_sort:对容器进行稳定排序。
partial_sort:对容器的部分元素进行排序。
2、查找算法:
find:在容器中查找指定值的第一个出现位置。
find_if:在容器中根据给定的条件查找元素的第一个出现位置。
binary_search:在已排序的容器中执行二分查找。
3、数值算法:
accumulate:计算容器中元素的累加和。
inner_product:计算两个容器间的内积。
transform:将一个容器的值转换为另一个容器。
4、常用操作算法:
copy:将一个容器的元素复制到另一个容器。
fill:将指定值赋给容器中的所有元素。
reverse:将容器中的元素逆置。
5、删除和修改算法:
remove:从容器中删除指定值的所有元素。
replace:将容器中的指定值替换为新值。
unique:从容器中移除相邻重复的元素。
6、合并和修改算法:
merge:将两个已排序的容器合并为一个已排序的容器。
sort、unique 组合:对容器进行排序并移除重复的元素。
这些只是 头文件中的一部分函数,还有其他更多的功能丰富且实用的算法函数可供使用。它们在处理容器和集合时非常有用,并通过简洁和高效的方式提供了常见操作功能。