가장 빠른 배열 중복 제거 알고리즘
· 약 1분
가장 빠른 배열 중복 제거 알고리즘
통계 사용시에 중복을 제거해야하는 경우가 있다.
소스
/*
@author http://www.shamasis.net/2009/09/fast-algorithm-to-find-unique-items-in-javascript-array/
*/
// prototype
Array.prototype.unique = function () {
let o = {},
i,
r = [];
const l = this.length;
for (i = 0; i < l; i++) {
o[this[i]] = this[i];
}
for (i in o) {
r.push(o[i]);
}
return r;
};
// function
const uniqueArray = function (arr) {
let o = {},
i,
r = [];
const l = arr.length;
for (i = 0; i < l; i++) {
o[arr[i]] = arr[i];
}
for (i in o) {
r.push(o[i]);
}
return r;
};
예제
let testArray = [1, 2, 1, 3];
testArray = testArray.unique();
testArray = uniqueArray(testArray);
console.log(testArray); // [ 1, 2, 3 ];