在C++的标准STL库中, 提供了容器与许多对容器操作的算法, 以及一些其他的东西, 因为不再本文献范畴内则不举例, 通过STL库中已经封装好的容器操作算法,我们可以省去很多要去实现一个容器操作的代码, 要应用STL中的算法, 首先需要引入算法头文件, 如图
Partial_sort_copy算法
引入该头文件和我们需要的容器头文件, 就可以通过调用方法的方式实现一些对容器的操作了, 例如拷贝, 旋转, 插入, 排序等等. 该篇主要讲述partial_sort_copy算法, 这是一个对容器部分元素进行排序, 并复制到另一个容器的算法, 该算法内部实现原型为选择排序. 它有四个参数, 前两个参数用来指定要进行排序的容器范围, 后两个参数用来指定要拷贝到的容器范围. 举例如图

Partial_sort_copy算法

图中, 在main函数内先创建了一个长度为8的整型数组arr1并初始化元素为0, 接着利用generate_n算法对arr1进行填充再用for_each输出, 输出一个换行符后, 创建了一个长度为8的整形数组arr2并初始化为0, 接着使用partial_sort_copy算法将arr1内所有元素排序后拷贝到arr2内, 接着用for_each算法输出arr2, 得到输出结果如图

Partial_sort_copy算法

显然, 此时arr2中内的内容是为arr1排序后的, 接着修改参数为如图以印证局部排序和拷贝的动作

Partial_sort_copy算法

得到输出结果如图

Partial_sort_copy算法

即此时为将arr1中第三个元素开始到第八个元素排序拷贝到arr2中第四个元素到arr2末尾.

相关文章:

  • 2021-12-24
  • 2021-10-21
  • 2021-11-08
  • 2021-07-26
  • 2022-12-23
  • 2022-02-04
  • 2022-12-23
猜你喜欢
  • 2021-07-21
  • 2021-08-07
  • 2021-07-12
  • 2021-12-30
  • 2022-12-23
  • 2021-08-26
  • 2021-07-15
相关资源
相似解决方案