算法笔记-6.8 algorithm头文件下的常用函数

#include<stdio.h>
#include<algorithm>
#include<string>
using namespace std;
int main(){
	string str="abcdefgh";
	reverse(str.begin(),str.begin()+4);
	for(int i=0;i<str.length();i++){
		printf("%c",str[i]);
	}
}

/*
-----------------------------------
1.max(x,y)、min(x,y)、abs()
    max(x,y)和min(x,y)-------->参数必须是两个(可以是浮点数)  如需返回三个数的值则max(x,max(y,z))
    abs(x)--------->绝对值 x必须是整数 如果x是浮点型 则可以使用math下面的fabs
2.swap(x,y)
    ------->交换x,y的值
3.reverse(x,x+n)
    ------->将a[x]~a[x+n](左闭右开)的元素进行反转  支持字符数组和数字数组
    如:String str="abcdefgh"
        reverse(str,str+4);
        for(int i=0;i<str.length();i++){
            printf("%c",str[i]);
        }
4.next_permutation()
    ------->一个数列中全排列中的下一个序列
    如int a[10]={1,2,3};
      do{
        printf("%d%d%d\n",a[0],a[1],a[2]);
      }while(next_permutation(a,a+3));
      //输出 123 132 213 231 312 321
5.full()
    ------->可以将数组或容器中的某一段区间赋值为相同的值
    a[5]={1,2,3,4,5};
    fill(a,a+5,233);//将a[0]~a[4]均赋值为233
6.sort()排序....
7.lower_bound()和upper_bound()
*/

猜你喜欢

转载自blog.csdn.net/weixin_42127158/article/details/82020049