섹션 2. 큰 수 출력하기 문제에서 제가 작성한 답안의 원인을 모르겠습니다
327
작성한 질문수 2
기존 arr의 원소들을 answer로 push하지 않고, 참조 복사 후 조건에 안맞으면 삭제하는 방향으로 진행했습니다.
궁금한 것은 if 문이 시작되기 전에 콘솔에 i와 i+1을 찍어보면 인덱스가
(0,1)(1,2)(2,3),(3,4)씩 차례대로 비교가 되는데
똑같은 방법으로 콘솔에 answer[i], answer[i+1]을 찍어보면 순차적으로 비교하지 않고
(0,1)(2,3)(4,5)씩 비교합니다.
왜 이런 결과가 나오는지 알 수 있을까요?
답변 3
0
안녕하세요^^
i가 0일때,
if 문이 참이되어 answer.splice(i+1, 1);를 하게 되면
1번 인덱스에 있는 3이 지워지면 2번 인덱스에 있던 9가 1번 인덱스 위치로 당겨집니다. 그 효과 때문에 answer값을 출력하면 그렇게 보이는 것입니다.
0
function solution (arr) {
let answer = arr;
// push로 추가하는게 아니라 기존 배열 복사 후 조건이 아닐 경우 삭제.
for (let i = 0; i < answer.length; i++) {
if (answer[i] > answer[i+1]) {
answer.splice(i+1, 1);
}
}
return answer;
}
let arr=[7, 3, 9, 5, 6, 12];
console.log(solution(arr));
코드 올렸습니다 ! :)
continue를 사용하는 이유
0
75
2
정렬 가능 여부 판단하기
0
62
2
알고리즘 학습법 관련해서 질문드립니다.
0
80
1
코드 리뷰 부탁드립니다!
0
88
1
indexOf를 사용해서 풀어보았습니다 !!
0
67
1
저는 이런식으로 구현 해보았습니다 !!
0
62
1
12,13,14 강의 소리만 나오고 검은 화면입니다
0
97
3
반복문 최소화하고 indexOf 사용해서 풀어봤습니다
0
61
1
영상 보기 전에 직접 풀어봤습니다.
0
71
1
섹션1의 17번문제 이 풀이로 풀어도 될까요?
0
133
2
정규표현식으로 처리해도 상관없나요 ?
0
119
2
3칸씩 건너뛸 수 있을 경우
0
124
2
강의에 대해 질문있습니다.
0
133
2
Object와 Set을 이용해 풀어봤습니다.
0
116
2
이렇게 해도 되나요?
0
102
2
선생님 중복 단어나 중복관련 문제들은 set을 이용하면 좋을것 같습니다.
0
144
2
이렇게 풀어도 괜찮을까요?
0
136
1
이렇게 풀어도 괜찮을까요?
0
112
1
모든 아나그램 찾기에서 시간복잡도
0
98
1
코드리뷰 부탁드립니다.
0
129
1
for loop 탈출은 return 문으로 해도 되지 않나요?
0
129
1
투포인트알고리즘으로 풀어봤습니다.
0
138
0
코드 리뷰 부탁드립니다.
0
115
1
코드 맞게 작성한 거 아닌가여??
0
142
1





