c STL之常用排序演算法

2022-06-11 18:00:19 字數 1417 閱讀 5130

sort:對容器元素進行排序

random_shuffle:洗牌,指定範圍內的元素隨機調整次序

merge:容器元素合併,並儲存到另一容器中

reverse:反轉指定範圍內的元素

1.sort

#includeusing

namespace

std;

#include

#include

#include

//常用排序演算法 sort

void myprint(int

val)

void

test01()

intmain()

2.random_shuffle

#includeusing

namespace

std;

#include

#include

#include

//常用排序演算法 random_shuffle

void myprint(int

val)

void

test01()

//利用洗牌 演算法 打亂順序

random_shuffle(v.begin(), v.end());

for_each(v.begin(), v.end(), myprint);

cout

<}int

main()

3.merge

#includeusing

namespace

std;

#include

#include

void myprint(int

val)

//常用排序演算法 merge

void

test01()

//目標容器

vectorvtarget;

//提前給目標容器分配空間

vtarget.resize(v1.size() +v2.size());

merge(v1.begin(), v1.end(), v2.begin(), v2.end(), vtarget.begin());

for_each(vtarget.begin(), vtarget.end(), myprint);

cout

<}int

main()

4.reverse

#includeusing

namespace

std;

#include

#include

//常用排序演算法 reverse

void myprint(int

val)

void

test01()

intmain()

C STL 常用排序演算法

以下是排序和通用演算法 提供元素排序策略 merge 合併兩個有序序列,存放到另乙個序列。例如 vecinta,vecintb,vecintc是用vector宣告的容器,vecinta已包含1,3,5,7,9元素,vecintb已包含2,4,6,8元素 vecintc.resize 9 擴大容量 m...

C STL 之 常用演算法

include include include using namespace std transform 將乙個容器的元素 搬運 到另乙個容器中 struct myplus void myprint int val void test01 v2.resize v1.size 開闢空間 transf...

c STL之常用集合演算法

set intersection 求兩個容器的交集 set union 求兩個集合的並集 set difference 求兩個集合的差集 1.set intersection includeusing namespace std include include 常用集合演算法 set interse...