자료구조/알고리즘 - 중복 순열/순열/조합, DP의 알고리즘 예시
·
SE Bootcamp 내용 정리
중복 순열/순열/조합 조합: 순서 상관x 순열: 순서 상관 o 중복순열: 순서도 상관x, 중복도 상관x 먼저 반복문(for문)만으로 만들어서 생각해보자 for문을 이용한 순열/조합 중복 순열 중복 순열: 3개 중 3개를 뽑아서 중복 순열을 만든다면? → for 반복문을 3중으로 쓰면 된다 (3중 for문) // 3개 중 3개를 뽑는 중복순열의 예 let result=[]; const game = ['rock', 'paper', 'scissors']; for(let i=0;i < game.length; i++){ for(let j=0;j < game.length; j++){ for(let k=0; k< game.length; k++){ result.push([game[i], game[j], game[k]]..
자료구조/알고리즘 - 재귀
·
SE Bootcamp 내용 정리
학습 내용 * 재귀의 의미, 자바스크립트에서 재귀 호출 * 언제 재귀를 사용해야 하는가 * 재귀적 사고 연습을 통해 재귀함수를 base case와 resursive case로 나눠 작성하기 * Tree 구조에 재귀 함수를 사용해야 하는 이유 이해 - 실생활에 사용되는 유용한 Tree 구조 - 깊이를 알 수 없는 Tree 구조에 재귀 함수를 이용하여 모두 순회하기 재귀의 이해 - 다르게 생각하기 하나의 문제를 해결하기 위해 다양한 방식으로 생각하는 능력을 기르는 것 문제를 쪼개어 생각하는 방법 어떤 문제를 해결할 때, 동일한 구조의 더 작은 문제를 해결함으로써 주어진 문제를 해결하는 방법 → 재귀(recursion) ex) 자연수로 이루어진 리스트(배열)를 입력받고, 리스트의 합을 리턴하는 함수 `arrS..