打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C STL之algorithm

        我们在之前介绍过,STL可分为容器(containers)、迭代器(iterators)、空间配置器(allocator)、配接器(adapters)、算法(algorithms)、仿函数(functors)六个部分。

        在前几篇文章里主要向大家介绍了几种常用的容器,它们有vector(不定长数组)、stack(栈)、queue(队列)、set(集合)、map(映射)。今天我们来介绍一下algorithm算法库里的一些常用函数。

algorithm意为'算法',是C++的标准模版库(STL)中最重要的头文件之一,提供了大量基于迭代器的非成员模板函数。

在使用algorithm里的内容时和STL容器相似地,也要加上头文件。

algorithm 算法库

头文件:#include<algorithm>

常用函数:

    1.max(x,y)

        返回值为x和y的最大值。

    2.min(x,y)

        返回值为x和y的最小值。

    3.abs(x)

        返回x的绝对值。x必须为整数,浮点数的绝对值使用<math.h>下的fabs()。

    4.swap(x,y)

        交换x和y的值。

    5.reverse(it1,it2)

        将数组指针在[it1,it2)之间的元素或容器的迭代器范围内的元素进行反转。

    6.next_permutation(首元素地址,尾元素的下一地址)

        给出一个序列在全排列的下一个序列。

int a[10] = {1,2,3}

do{

    cout<<a[0]<<a[1]<<a[2]<<endl;

}while(next_permutation(a,a+3));

/*

输出:

123

132

213

231

312

321

*/

    7.fill(首元素地址,尾元素的下一地址,值)

        把数组或容器的某一段区间赋为某个相同的值。

fill(a,a+5,233);

//将a[0]~a[4]均赋值为233.

    8.sort(首元素地址,尾元素的下一地址,比较函数(非必填) )

        排序,若不填写比较函数,则默认进行递增排序。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C++的标准模板库(STL)简介
什么是STL
STL简介
STL之vector的使用
STL容器详解
标准模板库(STL)使用入门(上)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服