일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준알고리즘
- C++
- 백준 알고리즘
- 문자열
- 브루트포스
- 그래프 탐색
- 브루트포스 알고리즘
- SW Expert Academy
- 다이나믹 프로그래밍
- oracle
- 자바스크립트
- 백트래킹
- 구현
- SWEA
- 이분 탐색
- 그래프 이론
- 너비 우선 탐색
- 너비우선탐색
- BFS
- javascript
- 다익스트라
- 프로그래머스
- Python
- DP
- 스택
- 파이썬
- 그리디 알고리즘
- DFS
- 오라클
- 데이터베이스
- Today
- Total
목록전체 글 (152)
민규의 흔적

논리적 설계 단계에서는 ER 스키마를 관계 데이터 모델의 릴레이션들로 사상한다. ER 스키마를 관계 모델의 릴레이션으로 사상 ER 스키마에는 엔티티 타입과 관계 타입이 존재하지만, 관계 데이터베이스에는 엔티티 타입과 관계 타입을 구분하지 않고 릴레이션만 존재한다. ER 모델을 릴레이션들로 사상하는 과정에는 총 7단계로 이루어져 있다. 단계 사상할 대상 알고리즘 구분 1단계 엔티티 타입과 단일 값 애트리뷰트 정규(강한) 엔티티 타입 2단계 약한 엔티티 타입 3단계 관계 타입 2진 1:1 관계 타입 4단계 2진 1:N 관계 타입 5단계 2진 N:M 관계 타입 6단계 N진 관계 타입 7단계 다치 애트리뷰트 다중 값 애트리뷰트 1단계 : 정규 엔티티 타입과 단일 값 애트리뷰트 ER 스키마의 각 정규 엔티티 타입..

2023년 10월 27일 플로이드-워셜(Floyd-Warshall) 플로이드-워셜 알고리즘이란, 모든 최단 경로를 구하는 알고리즘이다. 다익스트라 알고리즘은 하나의 정점에서 다른 모든 정점까지의 최단 거리를 구하는 알고리즘이라면, 플로이드-워셜 알고리즘은 한 번의 실행으로 모든 정점 간의 최단 거리를 구할 수 있다는 차이로 구분할 수 있다. 또한 음수 가중치가 존재하는 가중치 그래프에서는 적용할 수 없는 다익스트라 알고리즘과는 다르게, 플로이드-워셜 알고리즘은 음수 가중치가 존재하는 가중치 그래프에서도 활용할 수 있다. 접근 방법 사전 준비 플로이드-워셜 알고리즘을 적용하기 위해선, 가중치 그래프가 존재해야 한다. 임의의 가중치 그래프를 예시로 들어보겠다. 정점은 1~5번까지 총 5개의 정점이 존재하고,..

지적 및 질문은 언제나 환영입니다 ! 2023년 10월 24일 문제 링크 : 프로그래머스 - 조건에 맞는 도서 리스트 출력하기 문제 설명 다음은 어느 한 서점에서 판매중인 도서들의 도서 정보(BOOK) 테이블입니다. BOOK 테이블은 각 도서의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다. 문제 BOOK 테이블에서 2021년에 출판된 '인문' 카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일(PUBLISHED_DATE)을 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요. 입력 예시 출력 예시 SQL을 실행하면 다음과 같이 출력되어야 한다. TABLE 생성 CREATE TABLE BOOK( BOOK_ID NUMBER NOT NULL, CAT..

다음은 가상의 기업에서 볼 수 있는 요구사항에 관한 내용이다. 데이터베이스 설계 요구사항 기업에는 다수의 사원들이 재직한다. 각 사원에 대해서 사원번호(고유함), 이름, 직책, 급여, 주소를 저장한다. 주소는 시, 구, 동으로 세분하여 나타낸다. 각 사원은 0명 이상의 부양가족을 가질 수 있다. 한 부양가족은 두 명 이상의 사원에게 속하지 않는다. 각 부양가족에 대해서 부양가족의 이름과 성별을 저장한다. 회사는 여러 개의 프로젝트들을 진행한다. 각 프로젝트에 대해서 프로젝트번호(고유함), 이름, 예산, 프로젝트가 진행되는 위치를 나타낸다. 한 프로젝트는 여러 위치에서 진행될 수 있다. 각 프로젝트마다 여러 명의 사원들이 일을 한다. 각 사원은 여러 프로젝트에서 근무할 수 있다. 각 사원이 해당 프로젝트에..

IE 표기법 (새발 표기법) Chen 표기법(ER 표기법)은 수십 개 이상의 애트리뷰트가 엔티티 타입에 연결된 다이어그램을 나타내려면 매우 불편하고 공간을 많이 차지하는 단점을 지닌다. 이에, ERWing 등의 많은 CASE 도구들은 새발(crow-feet) 표기법 또는 IE 표기법을 사용한다. ER 표기법과 IE 표기법 ER 표기와 IE 표기의 차이점을 하나씩 알아보자. 1:1 관계 A와 C의 관계 B에 대해서, 1. C 엔티티 타입은 A 엔티티 타입의 각 엔티티와 최소 1, 최대 1의 관계를 가진다. 2. A 엔티티 타입은 C 엔티티 타입의 각 엔티티와 최소 0, 최대 1의 관계를 가진다. 1:N 관계 A와 C의 관계 B에 대해서, 1. C 엔티티 타입은 A 엔티티 타입의 각 엔티티와 최소 0, 최대..

ER 스키마를 작성하기 위한 지침 ER 스키마를 작성하기 위한 지침으로는 다음과 같다. 다치 애트리뷰트는 엔티티로 분류한다. (필수적인 부분은 아님) 엔티티는 키 애트리뷰트 이외에 설명 정보를 갖는다. 애트리뷰트들이 직접 설명하는 엔티티에 애트리뷰트들을 붙인다. 관계는 일반적으로 독자적으로 존재할 수 없지만, 엔티티 타입과 관계 타입을 절대적으로 구분하는 것은 어렵다. 이는 사람마다 관점이 다르기 때문이다. 다음의 관계 타입과 엔티티 타입 모델링 예시를 보자. 애트리뷰트를 그 자체로 표현할 수도 있으며, 애트리뷰트를 엔티티로 표현할 수도 있다. 둘 다 맞는 표현이며 이는 사람의 관점에 따라 다르기 때문에 절대적으로 구분하는 것은 힘들다. ER 표기법 요약

ER 모델 데이터베이스 설계를 용이하게 하기 위해 Peter Chen이 1976년에 제안하였다. 개체와 개체 간의 관계를 이용해 현실 세계를 개념적 구조로 표현한 모델이다. 기본적인 구문으로는 엔티티, 관계, 애트리뷰트가 있고, 기타 구문으로는 카디날리티 비율, 참여 제약조건 등이 있다. 전체 참여 어떤 관계에 엔티티 타입 E1의 모든 엔티티들이 관계 타입 R에 의해서 어떤 엔티티 타입 E2의 어떤 엔테테와 연관되는 것을 의미한다. 약한 엔티티 타입은 항상 관계에 전체 참여이다.(소유 엔티티 타입의 키를 빌려오기 때문에 전체 참여일 수 밖에 없다.) 전체 참여는 ER 다이어그램에서 이중 실선으로 표기한다. 부분 참여 어떤 관계에 엔티티 타입 E1의 일부 엔티티만 참여하는 것을 의미한다. 전체 참여와 부분..

ER 모델 데이터베이스 설계를 용이하게 하기 위해 Peter Chen이 1976년에 제안하였다. 개체와 개체 간의 관계를 이용해 현실 세계를 개념적 구조로 표현한 모델이다. 기본적인 구문으로는 엔티티, 관계, 애트리뷰트가 있고, 기타 구문으로는 카디날리티 비율, 참여 제약조건 등이 있다. 카디널리티 비율 한 엔티티가 참여할 수 있는 관계의 수를 나타낸다. 관계 타입에 참여하는 엔티티들의 가능한 조합을 제한한다. 관계를 흔이 1:1, 1:N, M:N으로 구분하며 카디널리티에 관한 정보는 간선 위에 나타낸다. 1:1 관계 두 엔티티 타입 E1, E2가 있다고 가정했을 때, E1의 각 엔티티가 정확하게 E2의 한 엔티티와 연관되고, E2의 각 엔티티가 정확하게 E1의 한 엔티티와 연관되면 이 관계를 1:1 관..