手寫去重 unique

2021-10-12 01:51:55 字數 476 閱讀 1452

陣列去重 [「blue」,「red」,「red」,「black」,「blue」] 要求去除陣列中重複的元素

1、目標:把舊陣列裡面不重複的元素選取出來放到新陣列中,重複的元素只保留乙個,放到新陣列中去重

2、核心演算法 我們遍歷就陣列,然後拿著舊陣列元素去查詢新陣列,如果該元素在新陣列裡面沒有出現過,我們就新增,否則不新增

3、我們怎麼知道該元素沒有存在,利用新陣列.indexof(陣列元素)如果返回-1 就說明陣列裡面沒有該元素

function

unique

(arr)

}return newarr;

}let demo=

unique([

"blue"

,"red"

,"red"

,"black"

,"blue"])

console.

log(demo)

unique 去重函式

unique 函式是乙個去重函式,stl中unique的函式 unique的功能是去除相鄰的重複元素 只保留乙個 還有乙個容易忽視的特性是它並不真正把重複的元素刪除。他是c 中的函式,所以標頭檔案要加 include,具體用法如下 int num 100 unique num,mun n 返回的是n...

unique 去重函式

unique 是c 標準庫函式裡面的函式,位於標頭檔案 include中,其功能是去除相鄰的重複元素 只保留乙個 所以使用前需要對陣列進行排序 該函式的乙個使用方法,對於長度為n陣列arr,unique arr,arr n arr返回的是去重後的陣列長度 那它是怎麼實現去重的呢?刪除?不是,它並沒有...

陣列去重unique

昨天晚上筆試,第一題,涉及到陣列去重,寫了好幾種方法,都沒有ac 今天突然看到大佬用的函式unique,才明白原來c 有自帶的去重函式。現在總結一下unique,unique的作用是 去掉 容器中相鄰元素的重複元素 不一定要求陣列有序 它會把重複的元素新增到容器末尾 所以陣列大小並沒有改變 而返回值...