vector去重方法

2021-08-14 01:33:39 字數 349 閱讀 5448

1.排序以後使用unique()函式:unique函式比較的時相鄰的兩個元素,重複的放到vector尾部

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

vector.erase(unique(

vector

.begin(),

vector

.end()),

vector

.end());

//unique()函式將重複的元素放到vector的尾部 然後返回指向第乙個重複元素的迭代器 再用erase函式擦除從這個元素到最後元素的所有的元素

2.轉化為set,在轉為vector:這個思路比較簡單,這裡就不介紹了!

多維vector去重

1 先sort,然後才可能做unique 2 unique完了之後,iterator指向最後乙個元素之後,於是erase從此處至end 即可。這裡比較神奇的是sort和unique可以直接比較2個一維 vector的大小。具體 如下 include include include using nam...

陣列去重方法

1 es6提供了新的資料結構set,它類似於陣列,但是成員的值是唯一的,沒有重複的值。let arr 1,2,5,2,3,4,1,2,3,5,4,1,2,3,2,1,1,1,asd 123 123 123 asd 1,true,true,false console.log new set arr 或...

陣列去重方法

雙迴圈去重 雙重 for 或 while 迴圈是比較笨拙的方法,它的實現原理很簡單 先定義乙個包含原始陣列第乙個元素的陣列,然後遍歷原始陣列,將原始陣列中的每個元素與新陣列的每個元素進行比較,如果不重複則新增到新的陣列中,最後返回新的陣列,其缺點是如果陣列長度很長,那麼將會非常消耗記憶體 funct...