이머시브 코스 TIL 3주차 모음
Big-O 표기법
O(1)
: constant complexity라고 부르며, 입력값이 증가해도 시간은 늘어나지 않음O(n)
: linear complexity라고 부르며, 입력값이 증가함에 따라 시간 또한 같은 비율로 증가하는 것을 의미O(log n)
: logarithmic complexity라고 부르며 Big-O 표기법 중 O(1) 다음으로 빠른 시간복잡도를 가짐O(n^2)
: quadratic complexity라고 부르며, 입력값이 증가함에 따라 시간이 그의 제곱수의 비율로 증가하는 것을 의미O(2^n)
: exponential complexity라고 부르며 Big-O 표기법 중 가장 느린 시간복잡도를 가짐선택 절차(Selection Procedure)
: 현재 상태에서의 최적의 해답을 선택적절성 검사(Feasibility Check)
: 선택된 해가 문제의 조건을 만족하는지 검사해답 검사(Solution Check)
: 원래의 문제가 해결되었는지 검사하고, 해결되지 않았다면 1번으로 돌아가 우의 과정을 반복Overlapping Sub-problems
큰 문제를 작은 문제로 나눌 수 있고, 이 작은 문제들은 중복된다Optimal Substructure
작은 문제에서 구한 정답은 그것을 포함하는 큰 문제에서도 같다. 즉, 작은 문제에서 구한 정답을 큰 문제에서도 사용할 수 있다function fibTab(n) {
if(n <= 2) return 1;
let fibNum = [0, 1, 1];
// n 이 1 & 2일 때의 값을 미리 배열에 저장해 놓는다
for(let i = 3; i <= n; i++) {
fibNum[i] = fibNum[i-1] + fibNum[i-2];
// n >= 3 부터는 앞서 배열에 저장해 놓은 값들을 이용하여
// n번째 피보나치 수를 구한 뒤 배열에 저장 후 리턴한다
}
return fibNum[n];
}
최대 공약수(GCD)와 최소 공배수(LCM)
순열/조합
멱집합
Basic CS Hiring Assessment
<리액트를 다루는 기술>
로 리액트 공부.. 커밋해놈