6 容器的排序和唯一化操作

2021-09-27 12:07:50 字數 937 閱讀 7513

需要函式如下(以下函式需要呼叫stl函式)

sort()//排序

unique()  //去重

(1)unique()函式是乙個去重函式,stl中unique的函式unique的功能是去除相鄰的重複元素(只保留乙個),還有乙個容易忽視的特性是它並不真正把重複的元素刪除。

(2)unique(num,mun+n)返回的是num去重後的尾位址,之所以說比不真正把重複的元素刪除,其實是,該函式把重複的元素一到後面去了,然後依然儲存到了原陣列中,然後返回去重後最後乙個元素的位址,因為unique去除的是相鄰的重複元素,所以一般用之前都會要排一下序。

實現**

#include "pch.h"

#include #include#include#include using namespace std;

int main()

//容器排序

sort(vec1.begin(), vec1.end());

//容器唯一化 unique唯一化 erase刪除後續多餘的元素

//unique刪除重複的元素 但是沒有改變容器長度 最後返回的是原有長度位址 因此原資料最後幾個元素會顯示出來

vec1.erase(unique(vec1.begin(), vec1.end()), vec1.end());

//顯示結果元素

cout << endl;

cout << "容器元素去除多餘元素" << endl;

for (piter = vec1.begin(); piter != vec1.end(); piter++)

system("pause");

return 0;

}

參考文獻

去重排序(unique函式的使用): 

超簡單的c++去重、排序:

stl之unique()去重函式:

排序和唯一值

sort命令可以幫助我們對文字檔案或stdin輸入進行排序,sort通常配合其他命令進行輸出操作。uniq是乙個經常與sort使用的命令。作用是從文字或stdin讀取唯一的行,uniq要求輸入必須經過排序。按數字順序排序 sort n dept 10 accounting new york 20 r...

JS中的唯一容器 陣列

js中的唯一容器 陣列 一 什麼型別的資料都可以儲存 二 定義的方式有兩種 1 var arra var arra a b c 2 var arra new array var arra new array num 指定陣列的長度 var arra new array a b c 和new arra...

容器Container的簡單操作(6)

一 概念 image可以看做是一類,而container則為基於類的例項化 二 容器操作 1 列出正在執行的容器 docker container ls2 列出所有容器,包括已退出執行的 docker container ls a 簡化命令 docker ps a 3 互動式執行容器 docker ...