algorithm下
//常用函数max(),
//min()
// abs()绝对值函数
//swap()交换函数
//reverse()反转函数,在给定一定范围内进行反转
//fill()在某一范围赋值,与memset不同
// sort((begin,end,compare)最后一个参数是默认的,从小到大
sort函数可以三个参数也可以两个参数,
它使用的排序方法是类似于快排的方法,时间复杂度为n*log2(n)
Sort函数有三个参数:(第三个参数可不写)
(1)第一个是要排序的数组的起始地址。
(2)第二个是结束的地址(最后一位要排序的地址)
(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。
//next_permutation()的用法,数组必须从小到大
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
int a[10] = {1,3,2};
sort(a,a+3); //必须从小到大
do{
cout<<a[0]<< " "<<a[1]<<" "<<a[2]<<endl;
}while(next_permutation(a, a+3));// 实现全排列
}
//lower_bound和upper_bound()