반응형 컴퓨터50 [데이터베이스] 함수적 종속성의 적용 함수적 종속성의 추론 규칙 주어진 함수적 종속성으로 추가적으로 성립하는 다른 함수적 종속성들을 추론할 수 있다. 암스트롱의 추론 규칙들 가장 기본이 되는 규칙이다. 이 규칙들을 바탕으로 다른 모든 추론 규칙들을 추론해 낼 수 있다. A1. 재귀성의 규칙 $Y \subseteq X이면, X \rightarrow Y이다.$ A2. 부가성의 규칙 $X \rightarrow Y이면, XZ \rightarrow YZ이다.$ A3. 이행성의 규칙 $X\rightarrow Y이고, Y \rightarrow Z이면, \rightarrow Z이다.$ 위의 규칙들을 다음 릴레이션을 통해 설명해 보고자 한다. A B C 1 1 ㄱ 1 2 ㄴ 1 2 ㄹ 2 1 ㄴ 1 2 ㄹ A1. 재귀성의 규칙은 어찌 보면 당연하다. AB(.. 2020. 6. 14. [데이터 베이스] 함수적 종속성(Functional dependency) 오늘은 함수적 종속성에 대해 이야기해 보고자 한다. 함수적 종속성에 대해 얘기하기에 앞서, 이 개념이 나오게 된 배경을 알아보려면, 좋은 릴레이션 스키마를 설정하는 기준에 대해 고민해 보아야 한다. 그럼, 좋은 릴레이션 스키마를 설정하는 기준에는 무엇이 있는가. 우선 중복된 정보가 없어야 한다. 다음 '학생-수강 과목' 릴레이션을 살펴보자, 학번이 15032인 사람의 이름이 John이라는 정보가 3번이나 들어가 있다. 학번 이름 과목코드 과목 이름 15032 John CS-1023 데이터베이스 15032 John CS-238 알고리즘 15032 John LG-335 심리 언어학 16028 Amy CS-238 알고리즘 이게 왜 문제가 될까? 위의 릴레이션 내 값들을 수정할 때 문제가 발생한다. 예를 들어 .. 2020. 6. 13. [데이터 베이스] 관계형 데이터베이스 매핑(Mapping) 데이터 베이스를 설계함에 있어서 ER(또는 EER)모델을 만들었다면, 그 후에 할 일은 이를 DBMS에서 이해할 수 있는 논리적 단계로 mapping시키는 것이다. 좀 어려운 부분이 이진 관계에 대한 mapping이라 생각되어 그 부분에 대해 중점적으로 다루고자 한다. 이진 관계는 Entity 사이의 가장 기본적인 관계로 대부분의 관계가 이진관계이다. 종류는 최대 카디널리티에 따라 1:N(one to many), 1:1(one to one), N:M(many to many)로 구분될 수 있고, 최소 카디널리티도 고려될 수 있다.(partial, total paticipation) Mapping 방법으로는 Merge(두 Entity type을 합한다.), Foreign key(관계형 DB의 전형적인 방식).. 2020. 6. 12. [알고리즘] 백준. #1932 회의실 배정 문제를 간단히 설명하자면, n개의 입력값을 받는데, 회의의 시작 시간과 종료시간으로 구성되어 있다. 주 회의를 가능한 많이 진행하고자 한다면, 최대 몇 개의 회의가 진행될 것인가 이다. 뭔가 OS 시간에 배운 scheduling 알고리즘 중에서도 비슷한 게 있었던 것 같다.. 물론 cpu scheduling의 경우엔 중간에 가로채는 것도 가능하고 하니깐 조금은 다른 방향성을 띄게 될 것이다. 모든 프로세스의 시간을 다 알고 있는 것도 아니고,,, 예제로 나와있는 입력값을 도식화 하면 다음과 같다. 주황 막대기는 회의 시간을 나타낸다. 수직으로 내려와 수직선과 만나는 곳에서 시작 시간과 종료 시간을 유추해볼 수 있다. 결국 저 주황 막대들이 겹치지 않게 가장 많이 고르는 방법을 찾는 것이다. 그리고 그 때.. 2020. 6. 11. [컴퓨터 구조] CPU time 컴퓨터 구조 시간에는 CPU에 대해서 주로 다룬다. 그만큼 CPU가 컴퓨터 내에서 핵심적인 구조 이리라. CPU time 이야기가 나온 이유는 컴퓨터의 성능을 측정하기 위해서이다. 컴퓨터는 기본적으로 기계, 그리고 어원에서도 살펴볼 수 있듯이, 계산을 위해 만들어진 기계이다.(compute + er) 우리는 어떤 기계를 원하는 가? 싸고 성능 좋은 기계를 원한다. 여기서 컴퓨터 시장에 대해 논하고자 하는 이야기가 아니니, 가격은 차치하고, 성능에 대해 살펴보자. 그럼 이 성능은 어떻게 설명될 수 있는가? 걸린 시간(Response time, Execution time)과 산출량(? Throughput)이다. 시간이 얼마나 걸렸는지, 단위 시간 동안에는 얼마나 많은 task를 해 냈는 지를 기준으로 성능이.. 2020. 6. 9. [알고리즘] 백준. #1904 01타일 동적 계획법 파트의 또 하나의 문제이다. 알고리즘 수업을 수강한 아는 형의 말이 떠올랐다. 알고리즘은 결국 '점화식'만 잘 짜면 되는거야.. 알고리즘을 잘 알지 못하는 나로서는 이게 맞는 말인지 아닌지 감이 잘 오지 않는다 하하.. 근데 적어도 동적 계획법에 한해서는 점화식만 잘 짜도 반은 먹고 들어가는 거 같다. 이번 문제는 이렇다. 00과 1이라는 타일이 있는데 n이라는 수가 주어졌을 때 이 두 종류의 타일을 이어 붙일 수 있는 경우의 수를 말한다. 00은 타일 2개가 붙어있는 꼴이다. 표로 정리해 보면 다음과 같다. n 1 2 3 4 타일 연속체 1 00, 11 001, 100, 111 0011, 1001, 1111, 0000, 1100 붙일 수 있는 타일 종류의 수 1 2 3 5 뭔가 패턴이 보일.. 2020. 6. 8. 반응형 이전 1 2 3 4 5 6 7 8 9 다음