같은 숫자는 싫어
2023. 11. 2. 08:33ㆍ알고리즘
arr = [0~9], 중복 숫자는 하나만 남기고 반환 순서 유지.
생각정리.
function solution(arr)
{
var answer = [];
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
console.log('Hello Javascript')
return answer;
}
set ?이 고유한 값 같은 거 관리 할 때 쓰는거니
배열을 set값에 입력해주면
set(arry) 순서유지 되면서 하나만 남길 거 같은데
set이 안먹히는 거 같습니다..? 정의 되지 않았다고 뜨는데
그러면 arry.filter -> 값 뽑은 다음 그 요소의 인덱스 값들을
indexof와 일치하는 지 비교해서
배열로 모아주면 될 거 같은데
다른 사람들 풀이
function solution(arr)
{
return arr.filter((val,index) => val != arr[index+1]);
}
function solution(arr) {
var answer = [arr[0]];
for (let i=1; i<arr.length; i++) {
if (answer[answer.length - 1] !== arr[i]) {
answer.push(arr[i]);
}
}
return answer;
}
let solution=_=>_.filter((i,$)=>i!=_[--$])
첫번째 풀이가 내가 생각한 방향이랑 비슷하다 하지만 더 간단하게 되어 있는데
어제 푼 문제 중에서도 인덱스 +1을 줘서 숫자 자리랑 비교 하는게 있었는데 그걸 생각했으면
값 vs 인덱스+1을 비교해서 좀 더 간단하게 만들 수 있었는데 생각하지 못 한 게 아쉽네.