面試中經常出現的陣列去重的一些方法

2021-07-31 22:45:50 字數 1049 閱讀 2993

陣列去重是筆試中經常見到的題目,方法也很多,下面是我可以想到的一些方法

方法一:新建乙個新陣列,如果新陣列中沒有要去重陣列中的值就放到新陣列中

functionunique

1(arr)

}returnnewarr}

對於方法一的一種改進

functionunique1

(arr)

})

returnnew1}

方法二:使用splice()方法,如果陣列中乙個值與陣列中的其他值相等,那麼就去掉後值。注意

splice()

可以修改原陣列

functionunique2

(arr)}}

returnarr;}

方法三:filter本身不修改陣列,會自動遍歷陣列,如果

item

對應的indexof

索引值與

item

本身index

索引值相等,返回

ture;

否則返回

false,

去掉重複值,那麼

arr就剩下不重複的了

functiontest

(arr));}

方法四:使用es6的方法

function unique(arr)

面試中經常出現的演算法

面試中經常出現的演算法 面試中經常出現的演算法 2010 09 21 09 01 分類 面試題二分查詢的 int bfind int a,int len,int val else if a m val else return m return 1 沒有找到 寫出在母串中查詢子串出現次數的 int c...

面試中經常出現的redis問題

總之一句話,用redis就是為了防止高併發訪問量大的情況下,你的伺服器gg了,就像是100w個賬號搶周杰倫演唱會2w個票時,大麥崩了!錢都花不出去!啥也不是!出現這個問題的原因就是多人同時訪問資料庫,造成資料庫的崩潰。這時候就出現了redis 不是黃牛的意思!redis作為乙個實現資料的快取,主要作...

面試中經常出現的演算法1(整理)

二分查詢的 int bfind int a,int len,int val else if a m val else return m return 1 沒有找到 寫出在母串中查詢子串出現次數的 int count1 char str,char s if s2 0 count str return ...