728x90

프로그래머스 코테 4

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(12)

■ 삼각형의 완성조건(1) 이 문제의 접근방식은 sides의 배열값들을 오름차순으로 정렬한뒤, 가장 작은 큰 수를 제외한 나머지 두 값의 합을 구하고 가장 큰 수와 두수를 비교해서 1 또는 2를 return 해주면 된다. 이 과정에서 정렬을 위해 sort함수와 경우의 수를 위해 if-else 문을 썼다. 다른 사람들의 풀이를 보면 return 부분을 삼항연산자를 이용해 깔끔하게 한줄로 작성할 수 있다. function solution(sides) { sides = sides.sort((a,b) => a-b) return sides[0]+sides[1] > sides[2] ? 1 : 2; } ■ 가까운 수 이 문제의 접근방식은 배열안에 있는 수 중에서 n과 가장 가까운 수를 찾아서 반환해주는것이다. 가장가..

[Algorithm] 프로그래머스 레벨[0] 풀이 - (Javascript)(5)

■ 짝수 홀수 개수 짝수만 담은 배열과 홀수만 담은 배열을 따로 구한 뒤, 하나의 배열에 담아서 반환하기로 했다. num_list의 마지막 리스트값만큼 반복문을 돌려준다. 처음에 map을 이용해서 짝수만, 홀수만 배열로 담았다. 그런데 실행 오류가 발생했고, 다시 mdn을 켜서 사용할 수 있는 함수들을 찾아봤다. 바로 filter함수! map을 사용할 수 없는 이유는 map은 새로운 배열을 반환하기 때문에 결과적으로 배열의 길이가 num_list와 같아진다. 그래서 짝수를 의미하는 num % 2 == 0, 홀수를 의미하는 num % 2 == 1를 하나의 배열에 담아 반환해준다. ■ 문자열 반복 출력하기 이 문제는 대소문자를 구분해서 반복되는 문자열을 return하는 문제이다. 우선 결과값 result를 ..

[Algorithm] 자바스크립트의 9가지 코드 트릭

프로그래머스 코딩테스트 광탈 방지 강의 내용을 스크랩 해 온것이다. https://programmers.co.kr/ 1. 구조 분해 할당을 이용한 변수 swap ES6의 구조 분해 할당 문법을 사용하여 두 변수를 swap 할 수 있다. let a = 5, b = 10; [a, b] = [b, a]; console.log(a, b); // 10 5 2. 배열 생성으로 루프 제거하기 단순히 범위 루프를 돌고 싶다면 다음과 같은 코드를 작성한다. let sum =0; for(let i=5; i k + 5) .reduce((acc, cur) => acc + cur, 0); 3. 배열 내 같은 요소 제거하기 set을 이용할 수 있다. const names = ['Lee', 'Kim', 'Park', 'Lee', ..

Frontend/Javascript 2023.02.20
728x90