function solution(arr){
let result = [arr[0]]
for(let i = 1; i < arr.length; i++){
if(arr[i] !== arr[i-1]){
result.push(arr[i])
}
}
return result;
}
function solution(arr){
return arr.reduce((acc, cur, idx)=>{
if(cur !== arr[idx-1]){
return [...acc, cur]
} else {
return [...acc]
}
},[])
}
리듀스는 성능문제로 풀리지 않는다.
리듀스도 arr을 한번 돌리는건 같은데 배열에 추가하는 것에서 시간이 더 걸리는 듯 하다.
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges#