목록2024/02 (147)
득이공간
해당 게시물은 한치근 교수님의 '알고리즘' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 3-1 * Dynamic Programming - Multistage decision proccess * Dynamic - multistage, time-varying * Programming - 훈련과 병참지원을 위한 military schedule의 optimal program을 구하는 방법을 program이라고 했음. * 동적계획 - divide-and-conquer 알고리즘은 하향식(top-down) 해결법 - dynamic programming은 상향식(bottom-up approach) 해결법 - 작은 문제 -> 큰 문제 순서로 해결한다. - 인덱스를 조정해서 중복된 계산을 피한다. - 작..
해당 게시물은 한치근 교수님의 '알고리즘' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 2-1 * 분할정복(Divide-and-Conquer)식 설계 전략 - 분할(Divide) : 해결하기 쉽도록 문제를 여러 개의 작은 부분으로 나눈다. - 정복(Conquer) : 나눈 작은 문제를 각각 해결한다. - 통합(Combine) : (필요하다면) 해결된 해답을 모은다. - 이러한 문제 해결 방법을 하향식(top-down) 접근방법이라고 한다. * 이분검색(binary search) : 재귀적방식 - 문제 : 크기가 n인 정렬된 배열 S에 x가 있는가? - 입력 : 양수 n, 배열 S[1..n], 키 x - 출력 : x가 S의 어디에 있는지의 위치. 만약 없으면, 0. index locati..
해당 게시물은 한치근 교수님의 '알고리즘' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 1-1 * 알고리즘 기원 - 페르시아의 수학자, 천문학자, 지리학자 알코와리즘 * 알고리즘 - 문제를 해결할 수 있는 잘 정의된(well defined) 유한(finite) 시간 내에 종료되는 계산적인(computational) 절차(procedure) - 확률적(probabilistic) 알고리즘은 무작위성을 포함한다. * 알고리즘 사용 예시 - 자율주행, 인공지능, 로봇, 메타버스, 암호화폐, NFT * 알고리즘 학습 목표 - Design(설계), Analysis(분석), Computational Complexity(계산복잡도), Application Capability(응용력) * 문제 분야 -..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 9장. 트랜잭션 9-1. 트랜잭션 개요 9-2. 동시성 제어 9-3. 회복 9-4. PL/SQL의 트랜잭션 📌 9-1. 트랜잭션 개요 * 트랜잭션(transaction) - 기본적으로 각각의 SQL문이 하나의 트랜잭션으로 취급된다. - 대규모 데이터베이스를 수백, 수천 명 이상의 사용자들이 동시에 접근한다. (항공기 예약, 은행, 신용 카드 처리, 대형 할인점 등) - 동시성 제어(concurrency control) : 다수 사용자가 데이터베이스를 동시에 접근하도록 허용하면서 데이터베이스의 일관성을 유지한다. - 회복(recovery) : 데이터베이스를 갱신하는 도중에 시스템이 고장 나..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 8장. 뷰와 시스템 카탈로그 8-1. 뷰 8-2. 시스템 카탈로그 📌 8-1. 뷰 * 뷰 (가상의 릴레이션) - 관계 데이터베이스 시스템의 뷰(view)는 다른 릴레이션으로부터 유도된 릴레이션(derived relation)이다. ANSI/SPARC 3단계 아키텍처의 외부 뷰와 다르다. - 뷰는 관계 데이터베이스 시스템에서 데이터베이스의 보안 메카니즘으로써, 복잡한 질의를 간단하게 표현하는 수단으로써, 데이터독립성을 높이기 위해서 사용된다. - 기존의 기본 릴레이션(base relation)에 대한 SELECT문의 형태로 정의된다. - 릴레이션으로부터 데이터를 검색하거나 갱신할 수 있는 ..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 7장. 릴레이션 정규화 7-1. 정규화 개요 7-2. 함수적 종속성 7-3. 제1정규형, 제2정규형, 제3정규형, BCNF 7-4. 역정규화 📌 7-1. 정규화 개요 * 릴레이션 정규화 - 부주의한 데이터베이스 설계는 제어할 수 없는 데이터 중복을 야기해서 여러가지 갱신이상(update anomaly)을 유발한다. INSERT, UPDATE, DELETE문으로 데이터를 변경할 때 - 정규화(normalization)는 주어진 릴레이션 스키마를 함수적 종속성과 기본 키를 기반으로 분석해서 원래의 릴레이션을 분해함으로써 중복과 세 가지 갱신이상을 최소화한다. * 갱신 이상(update ano..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 6장. 물리적 데이터베이스 설계 6-1. 보조 기억 장치 6-2. 버퍼 관리와 운영 체제 6-3. 디스크 상에서 화일의 레코드 배치 6-4. 화일 조직 6-5. 단일 단계 인덱스 6-6. 다단계 인덱스 📌 6-1. 보조 기억 장치 * 물리적 데이터베이스 설계 - 논리적인 설계의 데이터 구조 -> 보조 기억 장치상의 화일(물리적인 데이터 모델)로 사상 * 보조기억장치 - 주기억 장치 디스크 - 테이프 - 자기 디스크(hard disk) : 각 판은 트랙, 섹터로 구분됨. 탐구 시간(seek time), 회전 지연 시간(rotational delay), 전송 시간(transfer time) ..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 5장. 데이터베이스 설계와 ER 모델 5-1. 데이터베이스 설계의 개요 5-2. ER 모델 5-3. 데이터베이스 설계 사례 5-4. 논리적 설계: ER 스키마를 관계 모델의 릴레이션으로 사상 📌 5-1. 데이터베이스 설계의 개요 * 데이터베이스 설계 - 개념점 vs 물리적 - 개념적 데이터베이스 : 정보 사용의 모델을 개발하는 과정 - 물리적 데이터베이스 : 물리적인 저장 장치와 접근 방식 * 개념적 수준의 모델 - 엔티티-관계(ER: Entity-Relationship) 모델 - 구현 데이터 모델 * 데이터베이스 설계 과정 1. 요구사항 분석 단계 2. 설계 단계 - 개념적 설계 : E..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 4장. SQL 4-1. SQL 📌 4-1. SQL * SQL - System R - 관계 데이터 모델은 집합을 기반을 두고 있어 테이블 내에 동일한 튜플을 허용하지 않지만 SQL은 이를 허용한다. * 오라클 SQL 구성요소 - 데이터 검색 - 데이터 조작어 - 데이터 정의어 - 트랜잭션 제어 - 데이터 제어어 * 데이터 정의어 - 스키마의 생성과 제거 * 릴레이션 정의, 제거 - alter table, reate index\ * SELECT문 * 별칭 (alias) - 서로 다른 릴레이션에 동일한 이름을 가진 애트리뷰트가 속해 있을 때 애트리뷰트의 이름을 구분하는 방법 - FROM ~ A..
해당 게시물은 김태연 교수님의 '데이터베이스' 강의를 수강하며 학습한 내용을 개인적으로 정리한 글입니다. 📌 목차 - 3장. 관계 대수 3-1. 관계 대수 📌 3-1. 관계 대수 * 관계 해석(relational calculus) - 원하는 데이터만 명시하고 질의를 어떻게 수행할 것인가는 명시하지 않는 선언적인 언어 * 관계 대수(relational algebra) - 어떻게 질의를 수행할 것인가를 명시하는 절차적 언어 - 기존의 릴레이션들로부터 새로운 릴레이션을 생성한다. - 필수 연산자 : 셀렉션, 프로젝션, 합집합, 차집합, 카티션 곱 - 유도 연산자 : 교집합, 세타 조인, 동등 조인, 자연 조인, 세미 조인, 디비전 * 셀렉션 연산자 - σ(릴레이션) - 한 릴레이션에서 셀렉션 조건(select..