백준 15624번 피보나치 수 7 문제 유형: DP (동적 계획법) 문제 주의할 점 Python, JavaScript로 풀이시 Top-Down 방식 즉, 재귀 방식으로는 시간 초과가 발생한다. 또한 입력으로 주어지는 수가 최대 100만인데, Python은 최대 1000번까지 재귀할 수 있으므로 재귀 방식으로는 풀리지 않는다. 따라서 이 문제는 메모이제이션 + Bottom-Up 방식으로 풀이한다. Python 코드 JavaScript 코드
var의 특징 (특징: 안좋음..) var은 일반적인 코딩 방식과 어긋난다. 코드의 가독성과 유지보수성에 좋지 않다. 예전엔 var 변수를 사용했지만 최근에는 var을 사용하지 않는다. 따라서let(재할당이 필수로 필요한 경우), const(가능한 const를 사용!)를 대체해서 사용한다. 1️⃣ 변수 선언하는 키워드 없이 선언 & 할당이 가능하다. 따라서 선언인지, 재할당인지 구분하기 어렵다. something = '🥝'; console.log(something); 2️⃣ 중복 선언이 가능하다. 이전에 선언했던게 덮어 씌워질 수 있어 버그나 에러 발생 가능성이 있다. var myfruit = '🍌'; var myfruit = '🍌'; console.log(myfruit); 3️⃣ 블록 레벨 스코프 지원..
호이스팅(Hoisting)이란? 자바스크립트 엔진(Interpreter)이 코드를 실행하기 전, 변수, 함수, 클래스의 선언문을 위로 끌어 올리는 것을 말한다. 변수의 선언과 초기화를 분리한 후, 선언만 코드의 최상단으로 옮긴다. 함수 호이스팅 함수의 호이스팅은 함수의 선언문 전에 호출이 가능하게 해준다. 따라서 함수의 선언문은 선언 이전에도 호출이 가능하다. print(); function print() { console.log('Good Morning🌤️'); } 변수와 클래스 호이스팅 변수(let, const)와 클래스는 선언만 호이스팅이 되고, 초기화는 호이스팅이 되지 않는다. 따라서 아래와 같이 초기화 전에 변수에 접근하면 컴파일(빌드) 에러가 발생한다. error "Cannot access (..
Nullish coalescing operator (??) Nullish: null 또는 undefined Nullish coalescing operator는 논리 연산자로, ??를 사용한다. ??의 왼쪽 피연산자가 null 또는 undefined인 경우 오른쪽 피연산자를 반환한다. 반면, ??의 왼쪽 피연산자가 null과 undefined이 아닌 경우 왼쪽 피연산자를 반환한다. 아래 예시 코드를 보면 이해가 쉽다. 1️⃣ 왼쪽 피연산자가 null 또는 undefined인 경우 const apple = null ?? '🍎'; console.log(apple); // expected output: "🍎" 오른쪽 피연산자 🍎을 반환한다. 2️⃣ 왼쪽 피연산자가 null과 undefined이 아닌 경우 con..
Optional Chaining 연산자 (?.) ES11 (ECMAScript 2020) 객체의 Property에 접근하거나 함수를 호출했을 때 undefined 또는 null인 경우 에러를 던지는 대신, undefined를 반환한다. 즉, nullish값 (null 또는 undefined) 으로 인해 에러가 발생하는 것을 간단한 표현으로 처리할 수 있다. 왜 Optional Chaining을 사용할까? 예를 들어 adventurer 객체 안에 중첩된(nested) cat 객체가 있는 아래의 코드를 보자. nullish 값을 체크하면서(null 또는 undefined인 경우 에러가 발생하기 때문) adventurer 객체에 중첩된 'cat 객체의 name'을 가져오려면 어떻게 할 수 있을까? const ..
- Total
- Today
- Yesterday
- Browser
- DB
- CSS
- 그래프
- 알고리즘
- useState
- zustand
- 파이썬
- JavaScript
- error
- 데이터베이스
- DOM
- 에러
- React Query
- Python
- Component
- 함수
- mdn
- 자료구조
- github
- leetcode
- 정렬
- 자바스크립트
- state
- react
- 브라우저
- 리액트
- git
- BOJ
- Context API
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |