728x90
반응형
나의 생각 과정 :
첫 번째 원소를 temp에 저장하고, 다음원소의 숫자가 temp와 같은지 비교하고, 같으면 slice, 다르면 temp 최신화를 통해 한 칸씩 맞춰나간다. => 해결되지 않음.
/
function solution(arr)
{
let answer;
let temp=arr[0];
let index = 0;
let count=1;
while(index<arr.length){
if(temp == arr[count]){
arr= [...arr.slice(index,count), ...arr.slice(count+1)];
}else{
temp=arr[count];
}
index++;
count++;
}
return arr;
}
다른 사람풀이 :
반환할 배열 answer를 선언하고, arr을 반복문으로 검사하여 중복이 생기지 않으면 빈 배열에 push 한다.
function solution(arr){
var answer = [];
for(var i = 0; i < arr.length; i++){
if(arr[i] !== arr[i + 1]){
answer.push(arr[i]);
}
}
return answer;
}
filter를 사용하여 더욱 간단하게 표현한다.
function solution(arr){
return arr.filter((val,index) => val != arr[index+1]);
}
728x90
반응형