algorithm 修改序列的操作

2021-09-26 01:47:55 字數 2000 閱讀 2832

相關參考

修正序列演算法的有些操作會改變容器的內容。例如,把乙個容器的部分內容複製到同乙個容器的另乙個部分,或者用指定值填充容器。

函式演算法

copy(first, last, first2)

複製copy_backward(first, last, first2)

逆向複製

fill(first, last, val)

改填元素值

generate(first, last, func)

以指定動作的運算結果填充特定範圍內的元素

partition(first, last, pred)

切割random_shuffle(first, last)

隨機重排

remove(first, last, val)

移除某種元素,但不刪除

replace(first, last, val1, val2)

取代某種元素

rotate(first, middle, last)

旋轉reverse(first, last)

顛倒元素次序

swap(it1, it2)

置換swap_ranges(first, last, first2)

置換指定範圍

transform(first, last, first2, func)

以兩個序列為基礎,互動作用產生第 3 個序列

unique(first, last)

將重複的元素摺疊壓縮,變成唯一的

把值 val 複製到迭代器 first 和 last 指明範圍內的各個元素中。

#include

#include

#include

using

namespace std;

void

test_fill()

output

vector:0 1 2 3 4 5 6 7 8 9

vector:0 0 0 0 0 5 6 7 8 9

把迭代器 first 和 last 指明範圍內的元素順序隨機打亂。

#include

#include

#include

using

namespace std;

void

test_random_shuffle()

output

vector:0 1 2 3 4 5 6 7 8 9

vector:8 1 9 2 0 5 7 3 4 6

把乙個容器劃分成兩部分,第 1 部分包含令謂詞 pred 返回 true 值的元素,第 2 部分包含令謂詞 pred 返回 false值的元素。函式返回的迭代器指向兩部分的分界點元素。

#include

#include

#include

using

namespace std;

bool

greater5

(int value)

void

test_partition()

output

vector:8 1 9 2 0 5 7 3 4 6

vector:8 6 9 7 0 5 2 3 4 1

把從 middle 到 last 範圍內的元素做旋轉運算,並放置到從 first 開始的子串行中。

#include

#include

#include

using

namespace std;

void

test_rotate()

output

vector:0 1 2 3 4 5 6 7 8 9

vector:5 6 7 8 9 0 1 2 3 4

微軟文件(algorithm)

cppreference(algorithm)

python通用序列操作 序列的幾個通用操作介紹

sequence 是 python 的一種內建型別 built in type 內建型別就是構建在 python interpreter 裡面的型別,幾個基本的 sequence type 比如 list 表 tuple 定值表,或翻譯為元組 range 範圍 可以看作是 python interp...

PHP SESSION的增加 刪除 修改 檢視操作

session與cookie的不同之處首先是,cookie的檔案是儲存在客戶端的,而session是儲存在伺服器的,相比而言,jbuoahzz為了提高一定的安全性,session更具有優勢 因為session在伺服器端一般情況是伺服器的管理人員管理的,但cookie是在客戶端的儲存,任何人都可以看的...

drf 序列化實操

1 整理今天所學知識點 2 新建乙個django專案,定義乙個car類,有name字串屬性,color整型選擇屬性 0 銀色,1 黑色,2 紅色,3 灰色 price全精度小數型別,image檔案型別,brand字串型別 3 基於modelserializer類,完成car資源的單查,群查,單增介面...