C++的高端玩法(C11&STL)

作者: shad0w_walker(admin) 分类: 基础知识 发布时间: 2015-10-26 12:35 ė 6 没有评论

依然是一些基础的、常用的东西,能够使得代码更加简洁、高大上

c++11带来很多新特性,学习了几个可能用得到的

1、auto关键字

auto是一种自动类型推测的关键字,唯一要注意的是,在声明auto变量时要给变量赋初值

对于遍历一个容器,就有了更加简便的方法,以set为例

 

下面介绍几个STL中的函数

1、sort()&stable_sort()

sort()和stable_sort()都是排序函数,用法相同,区别在于stable_sort()不会改变相等的两个元素的相对位置(具体请看Sorting_algorithm#Stability

 

2、partial_sort()

顾名思义,对前_middle-_first个元素进行排序(实现方式是堆排)

 

3、nth_element()

nth_elememt()使第n小元素处在n位置,且前面的元素均比其小,后面的元素均比其大,但不一定使得得到的序列有序。另外,该函数无返回值。

 

4、lower_bound()&upper_bound()

对若干有序元素二分检索的函数,十分简单,值得注意的是set、map等容器中有同样的成员函数

 

5、unique()

对有序元素进行去重,只会去除相邻的重复元素,返回去重后元素的end

 

6、accumulate()

又是一个顾名思义的函数,对若干元素累积计算,并加上初始值,需要包含numeric头文件,(#include<bits/stdc++.h>大法好)

 

7、count()&count_if()

统计一个值或者满足某个条件的值的出现次数

 

本文出自shad0w_walker,转载时请注明出处及相应链接。

本文永久链接: https://www.sdwalker.com/archives/385.html

0

发表评论

电子邮件地址不会被公开。 必填项已用*标注

返回顶部