분류 전체보기(361)
-
9. use SQL
Basic SQL 'Movie' 테이블에서 studioName이 'Disney'이고 year가 1990인 데이터를 구하라 select * from Movie where studioName='Disney' and year=1990; 'Movie' 테이블에서 studioName이 'Disney'이고 year가 1990인 행의 title과 length를 구하라 select title, length from Movie where studioName='Disney' and year=1990; Comparison of String 문자열 비교는 =, !=, = 로 할 수 있음 비교는 사전순으로 진행됨 Pattern match %, _, \(backslash)로 할 수 있음 % : 0개 또는 1개 이상의 문자 _ :..
2021.05.16 -
2. Recursive
개요 재귀 함수(Recursive Function)란 함수 내에서 자신을 다시 호출하는 함수를 말합니다. 재귀 함수는 반복적인 패턴을 보이는 문제를 쉽게 해결할 수 있게 해주는 방법으로 활용할 수 있습니다. 재귀 함수의 활용 1. 피보나치 수열 피보나치 수열은 0, 1, 1, 2, 3, 5, 8 ... 과 같이 n-1과 n-2의 수를 더해가는 수열입니다. 피보나치 수열은 다음과 같은 규칙을 가집니다. n=1일 때, 0을 반환한다. n=2일 때, 1을 반환한다. 다른 경우, f(n-1) + f(n-2)의 값을 반환한다. 이를 재귀 함수를 사용하여 구현하면 다음과 같습니다. #include int Fibonacci(int n) { if(n==1) return 0; else if(n==2) return 1; ..
2021.05.12 -
1. Understanding of Datastructure and Algorithm
개요자료구조란?자료, 즉 데이터를 효율적으로 저장하고 관리하기 위한 구조를 말합니다.자료구조의 분류선형구조리스트스택큐비선형구조트리그래프파일구조순차파일색인파일직접파일단순구조정수실수문자문자열알고리즘의 성능분석 방법시간 복잡도, 공간 복잡도시간 복잡도알고리즘의 수행시간에 대한 분석결과를 말합니다.공간 복잡도메모리 사용량에 대한 분석결과를 말합니다.💡일반적으로 알고리즘의 성능은 시간 복잡도를 말합니다.시간 복잡도 분석의 핵심 요소알고리즘의 핵심이 되는 연산을 파악하고, 그 연산을 중심으로 시간 복잡도를 분석합니다.빅-오(Big-O) 표기법최고차항의 차수로 시간 복잡도를 표기하는 방법을 말합니다.대표적인 Big-OO(1)O(1)O(1)상수형 빅-오데이터 수에 상관없이 연산횟수가 고정인 유형의 알고리즘O(log n..
2021.05.12 -
[JavaScript] Promise Static Method
프로미스는 5가지 정적 메서드를 제공합니다. Promise.resolve / Promise.reject 이미 존재하는 값을 프로미스 객체로 래핑하는 메서드입니다. const resolved = Promise.resolved(resolve => resolve([1, 2, 3]); resolved.then(console.log); // [1, 2, 3] const rejected = Promise.rejected(new Error("에러 발생")); rejected.catch(console.log); // "에러 발생!" Promise.all 여러 프로미스들을 병렬적으로 처리할 때 사용하는 메서드입니다. const req1 = () => new Promise((resolve) => setTimeout(() ..
2021.05.12 -
[JavaScript] Promise Error Handling
프로미스는 콜백의 에러 처리 문제를 후속 메서드 catch를 통해 해결했습니다. new Promise((resolve, reject) => { throw new Error("에러 발생"); }) .then((resolve) => console.log(resolve)) .catch((err) => console.error(err)); // "에러 발생" 앞서 살펴본 바와 같이 catch 메서드는 then(undefined, reject)와 같아 다음과 같이 사용할 수 있습니다. new Promise((resolve, reject) => { throw new Error("에러 발생"); }) .then((resolve) => console.log(resolve)) .then((_, err) => consol..
2021.05.12 -
[JavaScript] Promise
Promise는 기존의 비동기 처리에서 콜백 헬을 해결하기 위해 나온 ECMAScript 표준 사양입니다. Promise 이전에 비동기 처리를 하기 위해서는 비동기 처리가 완료되면 콜백 함수를 실행하는 방식을 사용하였습니다. 비동기로 가져온 데이터는 외부에서 사용할 수 없기 때문입니다. 이유는 비동기를 처리하는 브라우저의 방식 때문입니다. 이에 대해서는 다른 장에서 자세히 다루도록 합니다. var asyncFn = requestData(apiURL, callback(data) => { requestData(apiURL, callback(data) => { reqeustData(apiURL, callback(data) => { // ... } } }) 이런 식으로 작성하게 되면 코드를 작성하기 힘들고 읽고..
2021.05.12