[알고리즘] Array Deep Dive 배열 제어하기
문제 설명
배열의 중복값을 제거하고 배열 데이터를 내림차순으로 정렬해서 반환하는 solution 함수 구현하기
제한사항
- 배열의 길이는 2이상 1,000 이하
- 배열의 각 데이터값은 -100,000이상 100,000 이하
입출력 예
입력 | 출력 |
---|---|
[1,-5,2,4,3] | [-5,1,2,3,4] |
[6,1,7] | [1,6,7] |
O(NlogN) sort() 이용
//배열 제어
function solution(arr) {
const uniqueArr = [...new Set(arr)]; //중복제거 (O(N))
return uniqueArr.sort((a, b) => b - a); //내림차순 정렬 (O(NlogN))
}
console.log(solution([4, 2, 2, 1, 3, 4])); //[4,3,2,1]
- 시간복잡도 O(NlogN)