我们在之前介绍过,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(首元素地址,尾元素的下一地址) 给出一个序列在全排列的下一个序列。
7.fill(首元素地址,尾元素的下一地址,值) 把数组或容器的某一段区间赋为某个相同的值。
8.sort(首元素地址,尾元素的下一地址,比较函数(非必填) ) 排序,若不填写比较函数,则默认进行递增排序。 |
|