일기/TIL
TIL: Today I Learned 61일차 [ 배열 회전시키기 ]
표자
2023. 2. 13. 09:54
728x90
반응형
1. 문제
프로그래머스 알고리즘 문제풀이 - 자바스크립트 [ 배열 회전시키기 ]
2. 시도해본 것들
뭐지 엄청 어려울것 같다라고 생각했다가
배열 공부했을때 맨앞 맨뒤에서 자유롭게 빼고 더할 수 있던것이 생각났다.
구글에 shift pop 을 검색하니 원하는 글이 나왔다.
push() = 배열 끝 추가
pop() = 배열 끝 제거
unshift() = 배열 첫 추가
shift() = 배열 첫 제거
3. 해결과정
입력은 right와 left만 받으니
if문이면 충분하고, 경우의 수는 2가지니
어떤 로직으로 결과값이 출력되는지 확인했다.
right는 맨끝에 있던애가 맨앞으로 오네?
left는 맨앞에 있던애가 맨뒤로 가네?
4. 알게 된 점
나의 코드
function solution(numbers, direction) {
var answer = [];
if(direction == "left"){
var shift = numbers.shift();
numbers.push(shift);
} else{
var pop = numbers.pop();
numbers.unshift(pop);
}
return numbers;
}
남의 코드
function solution(numbers, direction) {
if(direction === "right"){
numbers.unshift(numbers.pop());
}else{
numbers.push(numbers.shift())
}
return numbers;
}
변수선언 없이 깔끔하게 사용하는 방법!
728x90
반응형